Methods and systems for third-party control of remote imaging jobs

Information

  • Patent Grant
  • 8345272
  • Patent Number
    8,345,272
  • Date Filed
    Thursday, September 28, 2006
    18 years ago
  • Date Issued
    Tuesday, January 1, 2013
    12 years ago
Abstract
Embodiments of the present invention comprise systems and methods for third-party control of remote imaging jobs.
Description
FIELD OF THE INVENTION

Embodiments of the present invention comprise methods and systems for third-party control of remote imaging jobs performed on a peripheral device.


BACKGROUND

Some multi-function peripheral (MFP) devices allow external applications to interact with the on-board functionality of the device. However, these devices limit user interaction to input from the MFP hardware user interface (UI) on the device. These devices do not allow control to be extended to imaging jobs that originate at a remote source (i.e., non-walkup), such as a PC-print or PC-fax.


SUMMARY

Some embodiments of the present invention comprise methods and systems for third-party control of remote imaging jobs performed on a peripheral device.


Some embodiments provide for the programmatic control to a third-party controlling application that is controlling an imaging device. In some embodiments a remote user input device or client may provide a user interface for collecting user input. This user input may be passed to a controlling application that is in control of an imaging device. The controlling application may then act on the input received from the user input device to control the imaging device according to the input.


The foregoing and other objectives, features, and advantages of the invention will be more readily understood upon consideration of the following detailed description of the invention taken in conjunction with the accompanying drawings.





BRIEF DESCRIPTION OF THE SEVERAL DRAWINGS


FIG. 1 is a diagram depicting exemplary devices and communication links of exemplary embodiments of the present invention;



FIG. 2 is a diagram showing exemplary communication between an RCD and an IDev;



FIG. 3 is a diagram showing transmission of a UI definition from an RCD to an IDev;



FIG. 4 is a diagram showing exemplary communication between a remote user device and an IDev;



FIG. 5 is a diagram showing a UI registration being transmitted from an RCD to an IDev;



FIG. 6 is a diagram showing an exemplary embodiment comprising a UI definition being transmitted from an RCD to an RUD after transmission of the RCD URI to the RUD;



FIG. 7 is a diagram showing an exemplary embodiment comprising a UI definition being transmitted from an RCD to an RUD after a request from the IDev to the RCD;



FIG. 8 is a diagram showing an exemplary transmission of UI responses;



FIG. 9 is a diagram showing an exemplary transmission of driver actions;



FIG. 10 is a diagram showing an exemplary transmission of input responses to an RCD;



FIG. 11 is a diagram showing an exemplary transmission of driver actions and an imaging job;



FIG. 12 is a diagram showing an exemplary transmission of UI responses and logical pages;



FIG. 13 is a diagram showing an exemplary transmission of device actions from an RCD to and IDev;



FIG. 14 is a diagram showing an exemplary transmission of UI responses and page URI's, and



FIG. 15 is a diagram showing an exemplary transmission of device actions and a page data pull.





DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

Embodiments of the present invention will be best understood by reference to the drawings, wherein like parts are designated by like numerals throughout. The figures listed above are expressly incorporated as part of this detailed description.


It will be readily understood that the components of the present invention, as generally described and illustrated in the figures herein, could be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of the embodiments of the methods and systems of the present invention is not intended to limit the scope of the invention but it is merely representative of the presently preferred embodiments of the invention.


Elements of embodiments of the present invention may be embodied in hardware, firmware and/or software. While exemplary embodiments revealed herein may only describe one of these forms, it is to be understood that one skilled in the art would be able to effectuate these elements in any of these forms while resting within the scope of the present invention.


Some embodiments of the present invention comprise methods and systems for allowing imaging jobs that originate at a remote user device (RUD) to be programmatically controlled from a 3rd party application running on a remote computing device (RCD) wherein the 3rd party application is controlling an imaging device (IDev), such as a multi-function peripheral device (IDev 2). Examples of remote jobs that originate on an RUD comprise: PC-print, PC-fax, PC-file and others.


Some embodiments of the present invention may be described with reference to FIG. 1. These embodiments may comprise an imaging device 2 such as a multi-function peripheral device (IDev 2) that may perform multiple imaging functions such a copying, faxing, printing, scanning, filing, publishing, format conversion, displaying and other functions. An imaging device may also be a single function device. These embodiments may also comprise a remote computing device (RCD) 4 such as a server, PC or another computing device. An RCD 4 may comprise a processor, memory, storage devices, communication interfaces and other elements. The RCD 4 may communicate with other devices through a communication link, such as communication links 12 and 16. In some embodiments, the RCD 4 may only comprise a single communication link, in other embodiments, the RCD 4 may comprise multiple communication links 12, 16. Communication links 12, 16 and 10 may be wired or wireless communication links that employ standard communication protocols for networks, serial communication, parallel communication and other methods that accomplish bi-directional communication.


These embodiments may also comprise a remote user device (RUD) 5, such as a client personal computer (PC), workstation or another computing device with a user interface (UI) and display. A RUD 5, will typically comprise a central processing unit (CPU) 6, a display 8 and a user interface, such as a keyboard 7 and/or mouse 9. A RUD 5 may also comprise an imaging device driver that runs in conjunction with an operating system on the CPU 6.


In some embodiments data may be transmitted between an RCD 4 and an IDev 2 directly through communication link 12 or indirectly through RUD 5 via communication links 10 and 16. In some embodiments data may be transmitted between an RCD 4 and a RUD 5 directly through communication link 16 or indirectly through IDev 2 via communication links 10 and 12. In some embodiments data may be transmitted from an RUD 5 and an IDev 2 directly through communication link 10 or indirectly through RCD 4 via communication links 12 and 16.


In some embodiments of the present invention, an RCD 4 may take control of an IDev 2 function and allow user control of that function. This may be performed by sending UI content to a UI accessible to a user. In some embodiments, the IDev 2 may receive and display content from the RCD 4 and accept user input in response to the display of that content. In some embodiments, the RCD 4 may send UI content to an RUD 5 for display on the RUD display 8. User input received in response to the display of the UI content 14 on the RUD display 8 may be passed back to the RCD 4, either directly over communication link 16 or through the IDev 2 via communication links 10 and 12.


In some embodiments of the present invention, an exemplary operating environment may comprise an imaging device, such as an IDev 2, whose imaging jobs can be programmatically controlled by an external (3rd party) application running on an RCD 4. In these embodiments, the external controlling application may be registered with the IDev 2. Once registered, the controlling application takes control of the walkup access to the device by taking control of the IDev 2 user interface (UI) (e.g., front panel touch screen UI). In some embodiments, the controlling application may send a UI description to the IDev 2 and the IDev 2 may replace its native UI display with the UI description (e.g., display content) from the controlling application/RCD 4. When a walkup user enters input to the IDev UI, which is displaying the controlling application's UI display content, the IDev 2 may send the input responses to the controlling application on the RCD 4. The controlling application/RCD 4 may then interpret the input responses and, when appropriate, send commands back to the IDev 2 to effectuate functions indicated by the user's input.


In embodiments of the present invention, a controlling application on an RCD 4 is able to extend its programmatic control to remote UIs 8, such as those on a RUD 5, which interfaces with the IDev 2 (e.g., print/fax driver). In some embodiments, the controlling application/RCD 4 is able to register a remote UI interface 14 with the IDev 2, in a way that is comparable to registering a native UI interface. On the RUD 5/client PC side, the print/fax driver may be a generic driver with a programmatic control interface. In some exemplary embodiments, when the print/fax driver, at the RUD 5, is initiated, the driver may orchestrate the following process:

    • 1. Establish a bi-directional communication with the IDev.
    • 2. The IDev may forward a remote UI description registered by the controlling application/RCD to the print/fax driver on the RUD.
    • 3. The driver/RUD renders the UI as the print/fax settings UI and displays it to a user.
    • 4. The driver/RUD sends the UI responses back to the IDev, which forwards them to the controlling application/RCD.
    • 5. The controlling application/RCD interprets the responses and sends back to the IDev the corresponding actions for the device and/or driver.


      The generation of the print data by the print/fax driver may comprise one of the following methods:
    • 1. The driver/RUD waits for the controlling application/RCD to send driver actions. Based on these actions, the driver generates a completed print job.
    • 2. The driver/RUD sends the print data as logical pages (i.e., no sheet assembly, outputting instructions, etc) only when it sends the UI responses to the IDev. The IDev stores the logical pages and waits for the controlling application/RCD to send device actions. Based on these actions, the IDev renders/outputs the logical pages.


The printer/fax driver may be an application/process which converts document data in one format (e.g., MS-Word) into printer ready data (e.g., PCL) and optionally perform (i.e., print emulation) some of the print instructions specified at the UI. In other cases, the printer/driver may be an application which directly manipulates the document data in its original format (i.e., direct print, web browser, etc.) and optionally perform (i.e., print emulation) some of the print instructions specified at the UI.


1. Exemplary Operating Environment

In some embodiments, illustrated with reference to FIG. 2, an exemplary operating environment comprises a network- or locally-connected multi-functional peripheral device (IDev) 2 with both walkup and remote job input capabilities. Examples of walkup jobs comprise:


1. Copy


2. Network Scan


3. Hardcopy Fax Out


4. Scan to Storage (e.g., Filing)


Examples of remote input jobs comprise:


1. Print


2. Scan (e.g., twain driver)


3. PC-Fax


4. Filing


5. Format Conversion


6. Remote Copy


7. Publish to Web


In some embodiments, the IDev 2 may comprise a touch screen UI that can be programmatically controlled by an external (3rd party) controlling application 21, such as may be found on an RCD 4. In some embodiments, the controlling application 21 may be registered on the IDev 2, such as by manual input, programmatic subscription or discovery.


In this mode, the controlling application 21 may send a UI definition 22 to the IDev2, which the IDev 2 may render as the touch screen 26 UI interface 27 for walkup jobs. When the user enters input to the controlling application's touch screen UI 27, displayed at the IDev 2, the UI input responses may be sent back 23 to the controlling application 21/RCD 4. The controlling application 21/RCD 4 may then interpret the responses and send commands 24, corresponding to the input responses, to the IDev 2 to perform.


The controlling application's bi-directional communication connection 12 with the IDev 2 may be accomplished via many communication transport methods. Exemplary methods comprise:


1. TCP/IP


2. Apple Talk


3. IEEE 1284 Parallel Port


4. IrDA


5. Bluetooth, WiFi, other wireless protocols.


6. Local port: parallel, serial, USB.


2. Controlling Application Registration—Exemplary Embodiment 1—Remote UI Downloaded to IDev

In some embodiments of the present invention, described with reference to FIG. 3, a controlling application 31, running on an RCD 4, may be registered with the IDev 2. This registration process may occur by many methods. Exemplary methods comprise:

    • 1. Manual input through an administrative interface (e.g., key operator code on front panel or embedded web page).
    • 2. Automatic registration by the controlling application/RCD through a programmatic registration interface on the IDev (e.g., Simple Object Access Protocol (SOAP), HTTP, Proprietary protocol over TCP/IP, etc.)
    • 3. Discovery of the controlling application by the IDev by a service discovery protocol (e.g., Service Location Protocol (SLP), Simple Service Discovery Protocol (SSDP), Salutation, WS-Discovery, Microsoft UPnP, Sun Jini, Bluetooth, etc).


As part of the registration, the controlling application 31/RCD 4 may download 34 the remote UI definition to the IDev 2. The remote UI definition may be in any format suitable for describing a user interface, such as, but not limited to:


1. HTML (Hypertext Markup Language)


2. XML (Extensible Markup Language)


3. XUL (XML-based User Interface Language)—see Mozilla XPToolkit Project


4. Java Applets


The IDev 2 may then store the remote UI definition 33 for the registered controlling application 31. An IDev controller 32 may perform IDev file transfer, communication and other functions. Any means of storage may be used, such as, but not limited to:


1. Internal within the device.


2. External to the device, such as on a storage server.


3. Removable storage, such as a USB thumb drive.


In some embodiments, described with reference to FIG. 4, a user may then initiate a remote input job from an RUD/client PC 5 (e.g., desktop PC, laptop, PDA, etc) using a generic driver 40, which is capable of operating under the programmatic control of a controlling application 31. In these embodiments, the generic driver 40 may establish a bi-directional communication path 43 & 44 with the IDev 2. The communication path may be over many communication protocols, such as, but not limited to:


1. SOAP/XML


2. HTTP


3. FTP


4. Proprietary protocol over TCP/IP


In these embodiments, the generic printer driver 40 may be a driver which converts document data into printer ready data (e.g., Microsoft Windows compatible GDI printer driver), a direct print application (e.g., Sharp Color DPU), or a web browser (e.g., Microsoft Internet Explorer).


Once the generic driver 40 has established the communication path with the IDev 2, the generic driver 40 may request 43 from the IDev 2 a remote UI interface definition. The IDev 2 may then check if any controlling application with a remote UI is registered with the IDev 2. In some embodiments, the IDev may have more than one controlling application with a remote UI and may make a selection between registered applications based on a best-fit algorithm of by some other method. For example, the controlling application may register itself for either a class of:


1. Users


2. Scope (e.g., location, departmental association, network domain, etc).


3. Type (e.g., imaging job type: print, fax, file, scan, etc).


If the IDev 2 does not have at least one registered controlling application, the IDev 2 may send a rejection message 45 back to the generic driver 40. If the remote UI request 43 is rejected, the generic driver may either:


1. Terminate the process.


2. Try an alternate device.


3. Use a default User Interface, such as one built into the driver.


The remote UI request 43 from the driver 40 may also be granted/rejected for other reasons, such as:

    • 1. User Authentication—the device may authenticate the user initiating the remote UI request.
    • 2. Host Authentication—the device may be using IP/DNS name filtering to grant or reject access to a group of communication addresses or named devices.


If a controlling application is found and/or matched and access granted, the IDev 2 may send a remote UI definition 44 back to the generic driver 40. Generally, the responses 44 & 45 are on the same communication channel as the requests 43, but, in some embodiments, a separate communication channel may be used for back channel responses 44 & 45.


The generic driver 40 may then render a UI 42 on a display 41 according to the remote UI definition 44 it received. For example, in a Microsoft GDI print subsystem, a user may initiate a print/fax job by selecting Print in an application. The application may respond with a print dialog for selecting an installed printer (e.g., logical printer). The user would then select an installed printer associated with the generic driver. Once selected, the user can select a Properties button on the print dialog, which sends a command to the driver to render the driver specific print setting UI. Thus, in this example, when the user selects the properties button, the generic driver 40 would render the remote UI 42.


Additionally, a generic driver 40 may be directly associated with the IDev 2, such as by a port specification, or a virtual connection which is bound dynamically to the IDev 2, such as by:

    • 1. User input of the IDev's communication address (e.g., IP address) or network domain name (e.g., DNS, WINS).
    • 2. A device discovery method (e.g., WS-Discovery, SNMP discovery, etc).


Additionally, a generic driver 40 may also use programmatic aids in rendering the remote UI 42. For example, if the remote UI definition 44 is in an XML format, the generic driver 40 may use an XML style sheet (XSLT) to define how to render the XML data into a visual representation. Exemplary rendering aids may comprise:


1. The controlling application


2. The IDev 3. The driver.


In some embodiments, a user may be submitting an imaging job using a direct submit (i.e., driverless) application. In these cases, the direct submit application may perform the same remote UI functions as described for the generic driver 40.


In some embodiments, a user may be submitting an imaging job using a web browser. In these cases, the web browser may perform the same remote UI functions as described for the generic driver 40.


3. Controlling Application Registration—Embodiment 2—Remote UI Registered with IDev

In some embodiments, described with reference to FIG. 5, a controlling application 51 may be registered with an IDev 2, such as by methods described above.


In these embodiments, the registration process differs from the above in that the controlling application 51 does not download the remote UI definition to the IDev 2. Instead, the remote UI definition remains resident with the controlling application. As part of the registration process, the registration may comprise:

    • 1. A URI or URL identifying the location of the remote UI definition.
    • 2. A programmatic interface call to the controlling application to request the controlling application to download the remote UI definition.


In some embodiments, described with reference to FIG. 6, a user may initiate a remote input job from a client PC/RUD 5 (e.g., desktop PC, laptop, PDA, etc) using a generic driver 60, which is capable of operating under the programmatic control of a controlling application 67. In these embodiments, the generic driver 60 may establish a bi-directional communication path 63 & 69 with an IDev 2, using any method such as those described above.


Once the generic driver 60 has established the communication path 63 & 69 with the IDev 2, the generic driver 60 may request 63 from the IDev 2 a remote UI interface definition. The IDev 2 may then check if any controlling application with a remote UI is registered with the IDev 2. In some embodiments, the IDev 2 may have more than one controlling application with a remote UI and may make a selection as describe above or by other methods.


If the IDev 2 does not have at least one registered controlling application, the IDev 2 may send a rejection message 69 back to the generic driver 60. If the remote UI request 63 is rejected, the generic driver 60 may respond as described above in relation to embodiments illustrated in FIG. 4.


If a controlling application 67 is found and/or matched and access is granted, the IDev 2 may send a remote UI URI 68 (or programmatic call) back to the generic driver 60. If the response is in the form of a URI, the generic driver 60 may directly pull 66 the remote UI definition from the controlling application's UI storage 65, which may be remote or local to the RCD 4. In other embodiments, a programmatic call 68, sent to the generic driver 60 may establish a communication channel 66 with the controlling application 67 over which a remote UI definition (based on the programmatic call) may be requested. The controlling application 67 may then respond by transmitting the remote UI definition to the generic driver 60. Many protocols and data formats may be used for communications and remote UI definitions such as those described earlier in relation to other embodiments.


In other embodiments, a user may be submitting an imaging job using a direct submit (i.e., driverless) application. In these embodiments, the direct submit application may perform the same remote UI functions as described for the generic driver above.


In other embodiments, a user may be submitting an imaging job using a web browser. In these embodiments, the web browser application may perform the same remote UI functions as described for the generic driver above.


4. Controlling Application Registration—Embodiment 3—RUD URI Passed to IDev

In some embodiments, described with reference to FIG. 7, a user may initiate a remote input job from a client PC/RUD 5 (e.g., desktop PC, laptop, PDA, etc) using a generic driver 70, which is capable of operating under the programmatic control of a controlling application 77. In these embodiments, the generic driver 70 may establish a bi-directional communication path 73 & 79 with an IDev 2, using any method such as those described above.


Once the generic driver 70 has established the communication path 73 & 79 with the IDev 2, the generic driver 70 may request 73 from the IDev 2 a remote UI interface definition. The IDev 2 may then check if any controlling application with a remote UI is registered with the IDev 2. In some embodiments, the IDev 2 may have more than one controlling application with a remote UI and may make a selection as describe above or by other methods.


If the IDev 2 does not have at least one registered controlling application, the IDev 2 may send a rejection message 79 back to the generic driver 70. If the remote UI request 73 is rejected, the generic driver 70 may respond as described above in relation to embodiments illustrated in FIG. 4.


If a controlling application 77 is found and/or matched and access is granted, the IDev 2 may send a remote UI URI, programmatic call or another message 78 to the controlling application 77 requesting that the UI definition be sent to the generic driver 70. The controlling application 77 may then send 76 a UI definition 75 directly to the generic driver 70 identified in the message 78. The UI definition may be read from the controlling application's UI storage 65, which may be remote or local to the RCD 4. Many protocols and data formats may be used for communications and remote UI definitions such as those described earlier in relation to other embodiments.


In other embodiments, a user may be submitting an imaging job using a direct submit (i.e., driverless) application. In these embodiments, the direct submit application may perform the same remote UI functions as described for the generic driver above.


In other embodiments, a user may be submitting an imaging job using a web browser. In these embodiments, the web browser may perform the same remote UI functions as described for the generic driver above.


5. Remote Job Input—Embodiment 1—Client/RUD Interfaces with Controlling Application Via IDev

In some embodiments, described with reference to FIG. 8, a user may enter a selection (e.g., cursor, mouse selection, text input) into a generic driver's rendered remote UI 83. The input responses 85 may then be recorded by the generic driver 80. The input responses 85 may be associated with a specific selection control element (e.g., button selection, input box), a grid coordinate that can be mapped back to a selection control element or by some other association method.


Exemplary input responses may comprise:


1. Click˜button or checkbox selected/deselected.


2. Item˜index of an element within an enumerated selection list.


3. Text˜text entered into input box.


The input responses may then be sent 86 back to the IDev 2. The input responses 86 may be sent over the same communication channel used for a remote UI request from the IDev 2, or another (e.g., asynchronous) communication channel specifically for inputting a remote job.


The IDev 2 may then forward 87 the input responses to the controlling application 82. In some embodiments, the format of the input responses 86 between the RUD 5 and IDev 2 may be different than the format of the responses 87 between the IDev 2 and controlling application 82. In such a case, the IDev 2 may translate the input responses into a format compatible with the controlling application 82. The IDev 2 may use many methods to establish a communication path and forward the input responses to the controlling application, such as by using a SOAP/XML web service.


Additionally, the input responses 86 between the RUD/client 5 and IDev 2 and/or the responses 87 between the IDev 2 and controlling application 82 may be encrypted and/or compressed.


Some embodiments of the present invention may be described with reference to FIG. 9. In these embodiments, upon receipt of responses, the controlling application 93 interprets the responses. Based on the input data and associated control, the responses are converted into driver actions 96, specific to the generic driver 91. For example, printer drivers in the MS GDI print subsystem use a DEVMODE data structure to specify print settings. In this exemplary embodiment, the controlling application 93 may convert the responses (e.g., print settings) into the corresponding binary settings in a DEVMODE structure compatible with the generic driver 91.


In some embodiments, the controlling application 93 may convert the responses into a common job setting language compatible with the generic driver 91, such as representing the actions in an XML format.


In some embodiments, the controlling application may send the driver actions to the IDev 2. In some embodiments, the IDev controller 92 will receive the actions. The controlling application 93 may use the same communication channel by which the IDev 2 sends input responses to the controlling application 93, or another communication channel.


The IDev 2 may then forward the driver actions 94 to the generic driver 91. In some embodiments, the data format of the driver actions 94 between the IDev 2 and generic driver 91 is the same as the format of the driver actions 96 sent between the controlling application 93 and the IDev 2, and they may be forwarded without modification. In some embodiments, the formats may be different, and the IDev 2 may translate the driver actions 96 from the controlling application 93 into a format compatible with the generic driver 91. The IDev 2 may use any communication channel to send the driver actions back to the generic driver 91, such as the same communication channel used to receive the remote UI responses from the generic driver, or another communication channel.


The generic driver 91 may interpret the driver actions 94 received from the IDev 2 into print settings, and may perform the associated operations to produce an imaging job 95 which is compatible with the IDev 2 and which reflects the user's input intentions. The imaging job 95 is then sent by the generic driver 91 to the IDev 2 for rendering/outputting. The imaging job 95 may be sent by any communication channel, such as the communication channel used to receive the driver actions from the IDev 2, or another communication channel (e.g., legacy printing port˜LPR, RAW 9100).


In some embodiments, a user may be submitting an imaging job using a direct submit (i.e., driverless) application. In these cases, the direct submit application may perform the same remote UI functions as described for the generic driver 91.


In some embodiments, a user may be submitting an imaging job using a web browser. In these cases, the web browser may perform the same remote UI functions as described for the generic driver 91.


6. Remote Job Input—Embodiment 2—Client Interfaces Directly with Controlling Application

In some embodiments of the present invention, a user may enter selections into a generic driver's rendered remote UI 103 on a touch-screen display 104 or some other UI. The input responses 106 are then recorded by the generic driver 100. The input responses 105 may be associated with a specific selection control element, a grid coordinate that can be mapped back to a selection control element or they may be associated by some other relationship.


The input responses 106 may then be sent directly to the controlling application 102. The input responses 106 may be sent by any communication channel and data protocol. For example, if the generic driver 100 received a remote UI definition directly from a controlling application 102, the generic driver 100 may use the same communication channel. Otherwise, the generic driver 100 may establish another communication channel, such as over TCP/IP to transmit the data, such as a SOAP/XML message.


In some embodiments, the input responses between the client/RUD 5 and the controlling application 102 may be encrypted and/or compressed. Some embodiments of the present invention may be described with reference to FIG. 11. In these embodiments, the controlling application 112 may interpret received responses based on input data and associated control functions. The interpreted responses may then be converted into driver actions 114, specific to the generic driver 110, such as in the methods described earlier.


In some embodiments, the controlling application 112 may convert received actions into a common job setting language compatible with the generic driver 110, such as representing the actions in an XML format.


A controlling application 112 may send driver actions 114 to the generic driver 110. The controlling application 112 may use the same communication channel by which the generic driver 112 sent input responses, or another communication channel.


The generic driver 110 may then interpret the driver actions 114 received from the controlling application 112 into print settings and perform the associated operations to produce an imaging job 113 which is compatible with the IDev 2 and which reflects the user's input intention. The imaging job 113 may then be sent by the generic driver 110 to the IDev 2 for rendering/outputting. The imaging job may be sent by any communication channel, such as using a SOAP/XML web service or a legacy printing port (e.g., LPR, RAW 9100).


In other embodiments, a user may be submitting an imaging job using a direct submit (i.e., driverless) application. In these cases, the direct submit application may perform the same remote UI functions as described for the generic driver 110.


7. Remote Job Input—Embodiment 3—Client Interfaces with Controlling Application Via IDev 2

In some embodiments of the present invention, described with reference to FIG. 12, a user may enter selections into a generic driver's rendered remote UI 123. The input responses may then be recorded by the generic driver 120. The input responses may be associated with a specific selection control element, a grid coordinate that can be mapped back to a selection control element or they may be associated by some other relationship.


In some embodiments, the generic driver 120 may convert the document data into a print (or fax or file) format compatible with the IDev 2 as logical pages (i.e., not formatted for sheet placement, sheet assembly and outputting).


The input responses and logical pages 126 may then be sent back to the IDev 2. The input responses/logical pages 126 may be sent over the same communication channel that was used for a remote UI request from the IDev 2, or another (e.g., asynchronous) communication channel specifically for inputting a remote job.


In some embodiments, the IDev 2 may store the logical pages and then forward the input responses 127 to the controlling application 122. In some embodiments, the format of the input responses 126 between the client/RUD 5 and the IDev 2 may be different than the format of the UI responses 127 between the IDev 2 and controlling application 122. In such a case, the IDev 2 may translate the input responses 126 into a format compatible with the controlling application 122. The IDev 2 may use any method to establish a communication path and forward the input responses to the controlling application, such as by using a SOAP/XML web service.


In some embodiments, the input responses between the client/RUD 5 and the IDev 2 and/or between the IDev 2 and the controlling application 122 may be encrypted and/or compressed.


In some embodiments of the present invention, described with reference to FIG. 13, a controlling application 132 may interpret received responses based on input data and associated control functions. The interpreted responses may then be converted into device actions 133, specific to the IDev 2. For example, HP PJL/PCL compatible printers accept print settings in a PJL (Printer Job Language) format. In this example, the controlling application 132 converts the responses (e.g., print settings) into the corresponding PJL commands compatible with the IDev 2.


In some embodiments, the controlling application 132 may convert actions into a common job setting language compatible with the IDev 2, such as by representing the actions in an XML format.


A controlling application may send device actions 133 to the IDev controller 131 in the IDev 2. The controlling application 132 may use the same communication channel by which the IDev 2 sends input responses, or another communication channel.


The IDev 2 may then retrieve the logical pages and interpret the device actions 133 received from the controlling application 132 into print settings. The IDev 2 may also perform the associated operations to render/output the imaging job.


In other embodiments, a user may be submitting an imaging job using a direct submit (i.e., driverless) application. In these cases, the direct submit application may perform the same remote UI functions as described for the generic driver 130.


8. Remote Job Input—Embodiment 4—Client Interfaces Directly with Controlling Application

In some embodiments of the present invention, described with reference to FIG. 14, a user may enter a selection into a generic driver's rendered remote UI 143. The input responses 145 may then be recorded by the generic driver 140. The input responses may be associated with a specific selection control element, a grid coordinate which can be mapped back to a selection control element or they may be associated by some other relationship. In some embodiments, the generic driver 140 may convert the document data into a print (or fax or file) format compatible with the IDev 2 as logical pages (i.e., not formatted for sheet placement, sheet assembly and outputting). The logical pages may then be retained by the generic driver 140.


In some embodiments, input responses and URIs (Uniform Resource Indicators) 146 to the logical pages may be sent to the IDev 2. The input responses/Page URIs 146 may be sent over the same communication channel that was used for a remote UI request from the IDev 2, or another (e.g., asynchronous) communication channel specifically for inputting a remote job.


The IDev 2 may store the Page URIs and forward the input responses 147 to the controlling application 142. In some embodiments, the format of the input responses between the client/RUD 5 and IDev 2 may be different than between the IDev 2 and controlling application 142. In such a case, the IDev 2 may translate the input responses 146 into a format compatible with the controlling application 142. The IDev 2 may use any method to establish a communication path and forward the input responses 147 to the controlling application, such as by using a SOAP/XML web service.


In some embodiments of the present invention, a controlling application 142 may interpret responses received at a UI, based on the input data and associated control functions. The interpreted responses may then be converted into device actions, specific to the IDev 2, as described in relation to other embodiments above.


In some embodiments, a controlling application 152 may convert the actions into a common job setting language compatible with the IDev 2, such as by representing the actions in an XML format.


The controlling application 152 may then send the device actions 154 to an IDev 2. The controlling application may use the same communication channel by which the IDev 2 sent input responses, or another communication channel.


The IDev 2 may then pull or request 153 any associated logical pages from the generic driver 150, using the page URIs and interpret the device actions received from the controlling application into print settings. The IDev 2 may also perform the associated operations to render/output the imaging job.


In some embodiments, a user may be submitting an imaging job using a direct submit (i.e., driverless) application. In these cases, the direct submit application may perform the same remote UI functions as described for the generic driver 150.


In some embodiments, a user may be submitting an imaging job using a web browser. In these cases, the web browser may perform the same remote UI functions as described for the generic driver 150.


While many embodiments described above were written in the context of an exemplary print job, other embodiments may comprise other remote input imaging operations which render an output in either soft or hardcopy format, such as fax, scan, file, publish, display and format conversion.


Embodiments of the present invention may comprise elements of the print subsystems of the Microsoft Windows operating system, Apple MacIntosh Operating System, Linux Operating System, System V Unix Operating Systems, BSD Unix Operating Systems, OSF Unix Operating Systems, IBM Mainframe MVS Operating System, and IBM AS/400.


The terms and expressions which have been employed in the foregoing specification are used therein as terms of description and not of limitation, and there is no intention in the use of such terms and expressions of excluding equivalence of the features shown and described or portions thereof, it being recognized that the scope of the invention is defined and limited only by the claims which follow.

Claims
  • 1. A method for third-party control of a remotely-controlled imaging device in a system with a networked imaging device (IDev), remote computing device (RCD) and a remote user device (RUD), said method comprising: registering a controlling application executing on said RCD with said IDev, wherein said registering comprises sending a remote user interface definition (RUID) from said RCD to said IDev and establishing a bi-directional communication between said RCD and said IDev, wherein said registering enables said IDev to display said controlling application's user interface (UI) content on an IDev display and enables said IDev to accept user input relative to said UI content and forward said user input to said RCD and wherein said registering grants said controlling application control over an IDev function;extending control of said IDev function to said RUD by sending said RUID from said RCD to said RUD, wherein said RUD comprises a generic driver responsive to said RUID, wherein said generic driver responds to receipt of said RUID by displaying said controlling application's user interface (UI) content on an RUD display and enables said RUD to accept user input relative to said UI content and forward said user input to said RCD;receiving a user interface (UI) response at said RUD;forwarding said UI response to said RCD;converting said UI response to an IDev command with said RCD; andreceiving logical pages of an imaging job at said RCD from said RUD and forwarding said logical pages to said IDev with said IDev command, thereby initiating said IDev function.
  • 2. A method as described in claim 1, wherein said RUD's generic driver comprises a programmatic control interface.
  • 3. A method as described in claim 2, wherein said UI response is also converted into a driver action and said driver action is sent to said generic driver.
  • 4. A method as described in claim 2, wherein said IDev command instructs said IDev to perform said function with logical pages received from said generic driver.
  • 5. A method for third-party control of a remotely-controlled imaging device, said method comprising: registering a controlling application executing on a remote computing device (RCD) with an imaging device (IDev), wherein said registering comprises receiving a remote user interface definition (RUID) from said RCD at said IDev and establishing a bi-directional communication between said RCD and said IDev;granting said controlling application control over an IDev function in response to receiving said RUID;extending control of said IDev function to a remote user device (RUD) by sending said RUID from said RCD to said RUD, wherein said RUD comprises a generic driver responsive to said RUID, wherein said generic driver responds to receipt of said RUID by displaying said controlling application's user interface (UI) content on an RUD display and enables said RUD to accept user input relative to said UI content and forward said user input to said RCD;receiving an IDev command at said IDev from said RCD, wherein said IDev command has been translated by said RCD from user input received at said RUD;receiving logical pages of an imaging job at said IDev from said RCD wherein said logical pages were received at said RCD from said RUD and forwarded to said IDev with said IDev command, thereby initiating said IDev function; andperforming said IDev function according to said IDev command.
  • 6. A method as described in claim 5, wherein said IDev command instructs said IDev to perform said function with said logical pages received from said RUD.
  • 7. A method as described in claim 5, wherein said IDev command instructs said IDev to perform said function with logical pages received from said generic driver.
  • 8. A method as described in claim 5, wherein control is provided to said controlling application after discovery of said controlling application by said IDev with a service discovery protocol.
  • 9. A method for third-party control of a remotely-controlled imaging device, said method comprising: gaining remote control of an imaging device (IDev) function at a remote user device (RUD) by receiving a remote user interface definition (RUID) from a remote computing device (RCD);processing said RUID with a generic driver responsive to said RUID, wherein said generic driver responds to receipt of said RUID by displaying a controlling application's user interface (UI) content on an RUD display;configuring said RUD to accept user input relative to said UI content and to forward said user input to said RCD;wherein said controlling application is executing on said RCD and said controlling application is registered with said IDev thereby establishing a bi-directional communication between said RCD and said IDev and wherein said controlling application controls an IDev function via said bi-directional communication;receiving user input in response to said displaying;obtaining logical pages of an imaging job based on said user input; andsending said user input response and said logical pages said controlling application on said RCD with instructions instructing said RCD to forward said logical pages to said IDev with an IDev command identified in said user input.
  • 10. A method as described in claim 9, wherein said generic driver is under the programmatic control of said controlling application.
  • 11. A method as described in claim 9, wherein said RUID is received from an IDev.
  • 12. A method as described in claim 9, wherein said RUID is received from an RCD.
US Referenced Citations (527)
Number Name Date Kind
5085587 DesForges et al. Feb 1992 A
5228100 Takeda et al. Jul 1993 A
5323393 Barrett et al. Jun 1994 A
5365494 Lynch Nov 1994 A
5410646 Tondevold et al. Apr 1995 A
5504589 Montague et al. Apr 1996 A
5513112 Herring et al. Apr 1996 A
5542031 Douglass et al. Jul 1996 A
5586260 Hu Dec 1996 A
5659845 Krist et al. Aug 1997 A
5664206 Murow et al. Sep 1997 A
5671412 Christiano Sep 1997 A
5699493 Davidson et al. Dec 1997 A
5699494 Colbert et al. Dec 1997 A
5717439 Levine et al. Feb 1998 A
5726883 Levine et al. Mar 1998 A
5727082 Sugishima Mar 1998 A
5727135 Webb et al. Mar 1998 A
5745712 Turpin et al. Apr 1998 A
5745883 Krist et al. Apr 1998 A
5760775 Sklut et al. Jun 1998 A
5774678 Motoyama Jun 1998 A
5778356 Heiny Jul 1998 A
5791790 Bender et al. Aug 1998 A
5796934 Bhanot et al. Aug 1998 A
5799206 Kitagawa et al. Aug 1998 A
5799289 Fukushima et al. Aug 1998 A
5812818 Adler et al. Sep 1998 A
5832264 Hart et al. Nov 1998 A
5848231 Teitelbaum et al. Dec 1998 A
5877776 Beaman et al. Mar 1999 A
5915001 Uppaluru, V. Jun 1999 A
5944824 He Aug 1999 A
5956487 Venkatraman et al. Sep 1999 A
5956698 Lacheze et al. Sep 1999 A
5968127 Kawabe et al. Oct 1999 A
5993088 Nogay et al. Nov 1999 A
5995553 Crandall et al. Nov 1999 A
5999708 Kajita Dec 1999 A
6042384 Loiacono Mar 2000 A
6044382 Martino Mar 2000 A
6069706 Kajita May 2000 A
6075860 Ketcham Jun 2000 A
6115132 Nakatsuma et al. Sep 2000 A
6118546 Sanchez Sep 2000 A
6128731 Zarrin et al. Oct 2000 A
6141662 Jeyachandran Oct 2000 A
6148346 Hanson Nov 2000 A
6161139 Win et al. Dec 2000 A
6178308 Bobrow et al. Jan 2001 B1
6199080 Nielsen Mar 2001 B1
6213652 Suzuki et al. Apr 2001 B1
6216113 Aikens et al. Apr 2001 B1
6233409 Haines et al. May 2001 B1
6239802 Lahey et al. May 2001 B1
6240456 Teng et al. May 2001 B1
6246487 Kobayashi Jun 2001 B1
6292267 Mori et al. Sep 2001 B1
6301016 Matsueda et al. Oct 2001 B1
6307640 Motegi Oct 2001 B1
6311040 Kucinski et al. Oct 2001 B1
6349275 Schumacher et al. Feb 2002 B1
6353878 Dunham Mar 2002 B1
6369905 Mitsuhashi et al. Apr 2002 B1
6407820 Hansen et al. Jun 2002 B1
6426798 Yeung Jul 2002 B1
6433883 Kajita Aug 2002 B1
6438589 Iwata Aug 2002 B1
6462756 Hansen et al. Oct 2002 B1
6476926 Yano et al. Nov 2002 B1
6490547 Atkin et al. Dec 2002 B1
6490601 Markus et al. Dec 2002 B1
6509974 Hansen Jan 2003 B1
6510466 Cox et al. Jan 2003 B1
6516157 Maruta et al. Feb 2003 B1
6526258 Bejar et al. Feb 2003 B2
6567179 Sato et al. May 2003 B1
6590589 Sluiman Jul 2003 B1
6590673 Kadowaki Jul 2003 B2
6592275 Aihara et al. Jul 2003 B1
6597469 Kuroyanagi Jul 2003 B1
6604157 Brusky et al. Aug 2003 B1
6621422 Rubenstein Sep 2003 B2
6623529 Lakritz Sep 2003 B1
6636929 Frantz et al. Oct 2003 B1
6643650 Slaughter et al. Nov 2003 B1
6652169 Parry Nov 2003 B2
6685637 Rom Feb 2004 B1
6707466 Van Sickle et al. Mar 2004 B1
6721286 Williams et al. Apr 2004 B1
6735773 Trinh et al. May 2004 B1
6749434 Stuppy Jun 2004 B2
6772945 Mahoney et al. Aug 2004 B2
6775729 Matsuo et al. Aug 2004 B1
6823225 Sass Nov 2004 B1
6826727 Mohr et al. Nov 2004 B1
6836845 Lennie et al. Dec 2004 B1
6850252 Hoffberg Feb 2005 B1
6854839 Collier et al. Feb 2005 B2
6862110 Harrington Mar 2005 B2
6862583 Mazzagatte et al. Mar 2005 B1
6865716 Thurston Mar 2005 B1
6873429 Matsuura Mar 2005 B2
6874010 Sargent Mar 2005 B1
6904412 Broadbent et al. Jun 2005 B1
6915525 Ozawa Jul 2005 B2
6934706 Mancuso et al. Aug 2005 B1
6934740 Lawande et al. Aug 2005 B1
6940532 Fukui et al. Sep 2005 B1
6948175 Fong et al. Sep 2005 B1
6951303 Petersen et al. Oct 2005 B2
6964014 Parish Nov 2005 B1
6975820 Wong Dec 2005 B2
6999987 Billingsley et al. Feb 2006 B1
7003723 Kremer et al. Feb 2006 B1
7007026 Wilkinson et al. Feb 2006 B2
7012706 Hansen Mar 2006 B1
7013289 Horn et al. Mar 2006 B2
7019753 Rappaport et al. Mar 2006 B2
7034958 Hara Apr 2006 B1
7072057 Hansen Jul 2006 B1
7079143 Gilbert Jul 2006 B2
7095513 Stringham Aug 2006 B2
7107285 von Kaenel et al. Sep 2006 B2
7107615 Cossel et al. Sep 2006 B2
7117504 Smith et al. Oct 2006 B2
7124097 Claremont et al. Oct 2006 B2
7126717 Jeyachandran Oct 2006 B2
7127700 Large Oct 2006 B2
7136909 Balasuriya Nov 2006 B2
7136941 Nguyen et al. Nov 2006 B2
7143364 Tam Nov 2006 B1
7145673 Lin Dec 2006 B1
7145686 Simpson et al. Dec 2006 B2
7149697 Zerza et al. Dec 2006 B2
7149964 Cottrille et al. Dec 2006 B1
7162103 Meunier et al. Jan 2007 B2
7170618 Fujitani et al. Jan 2007 B2
7171615 Jensen et al. Jan 2007 B2
7174056 Silverbrook et al. Feb 2007 B2
7177814 Gong et al. Feb 2007 B2
7181017 Nagel et al. Feb 2007 B1
7181442 Yeh et al. Feb 2007 B2
7185078 Pleyer et al. Feb 2007 B2
7188125 Karr Mar 2007 B1
7188181 Squier et al. Mar 2007 B1
7191391 Takashima Mar 2007 B2
7191393 Chin et al. Mar 2007 B1
7197615 Arakawa et al. Mar 2007 B2
7203699 Bellamy Apr 2007 B2
7212301 Treibach-Heck et al. May 2007 B2
7216292 Snapper et al. May 2007 B1
7216347 Harrison et al. May 2007 B1
7228501 Brown et al. Jun 2007 B2
7233929 Lingle et al. Jun 2007 B1
7233973 Melet et al. Jun 2007 B2
7234110 Sumitomo Jun 2007 B2
7239409 Parry Jul 2007 B2
7249100 Murto et al. Jul 2007 B2
RE39808 Motegi Sep 2007 E
7268896 Bellagamba et al. Sep 2007 B2
7272269 Tojo et al. Sep 2007 B2
7275044 Chauvin et al. Sep 2007 B2
7284061 Matsubayashi et al. Oct 2007 B2
7284199 Parasnis et al. Oct 2007 B2
7293034 Paya et al. Nov 2007 B2
7296221 Treibach-Heck et al. Nov 2007 B1
7301658 Henry Nov 2007 B2
7305616 Nelson et al. Dec 2007 B1
7313587 Dharmarajan Dec 2007 B1
7321440 Kimura Jan 2008 B2
7325196 Covington et al. Jan 2008 B1
7327478 Matsuda Feb 2008 B2
7328245 Hull et al. Feb 2008 B1
7340389 Vargas Mar 2008 B2
7343551 Bourdev Mar 2008 B1
7349949 Connor et al. Mar 2008 B1
7363586 Briggs et al. Apr 2008 B1
7397362 Zhang et al. Jul 2008 B2
7404204 Davenport et al. Jul 2008 B2
7406660 Sikchi et al. Jul 2008 B1
7412374 Seiler et al. Aug 2008 B1
7424129 Hull et al. Sep 2008 B2
7437406 Hauduc et al. Oct 2008 B2
7437663 Lakhdhir et al. Oct 2008 B2
7441188 Russell et al. Oct 2008 B1
7444519 Laferriere et al. Oct 2008 B2
7444590 Christian et al. Oct 2008 B2
7451117 Cozianu et al. Nov 2008 B2
7451392 Chalecki et al. Nov 2008 B1
7454623 Hardt Nov 2008 B2
7467211 Herman et al. Dec 2008 B1
7472343 Vasey Dec 2008 B2
7478171 Ramaswamy et al. Jan 2009 B2
7490167 Pena et al. Feb 2009 B2
7496837 Larcheveque et al. Feb 2009 B1
7500178 O'Donnell Mar 2009 B1
7508535 Hart et al. Mar 2009 B2
7509649 Shenfield Mar 2009 B2
7545528 Takabayashi et al. Jun 2009 B2
7548334 Lo et al. Jun 2009 B2
7552265 Newman et al. Jun 2009 B2
7565554 Joosten et al. Jul 2009 B2
7567360 Takahashi et al. Jul 2009 B2
7573593 Hart et al. Aug 2009 B2
7599942 Mohamad Oct 2009 B1
7657557 Super Feb 2010 B2
7729363 Shenfield et al. Jun 2010 B2
7826081 Stevens et al. Nov 2010 B2
7886219 Lund Feb 2011 B2
7904600 Madril et al. Mar 2011 B2
7920101 Lum et al. Apr 2011 B2
7941743 Reddy et al. May 2011 B2
7941744 Oppenlander et al. May 2011 B2
7975214 Boegelund et al. Jul 2011 B2
8006176 Reddy et al. Aug 2011 B2
8037402 Foushee et al. Oct 2011 B2
8049677 Lum et al. Nov 2011 B2
8060556 Krane et al. Nov 2011 B2
20010021945 Matsuura Sep 2001 A1
20010027439 Holtzman et al. Oct 2001 A1
20010027527 Khidekel et al. Oct 2001 A1
20010028808 Nomura et al. Oct 2001 A1
20010038462 Teeuwen et al. Nov 2001 A1
20010039614 Hellberg et al. Nov 2001 A1
20010044787 Shwartz et al. Nov 2001 A1
20020016921 Olsen et al. Feb 2002 A1
20020020750 Dymetman et al. Feb 2002 A1
20020029256 Zintel et al. Mar 2002 A1
20020032745 Honda Mar 2002 A1
20020049786 Bibliowicz et al. Apr 2002 A1
20020052916 Kloba et al. May 2002 A1
20020055984 Chang et al. May 2002 A1
20020059265 Valorose, III May 2002 A1
20020073148 Haines et al. Jun 2002 A1
20020080381 Haines Jun 2002 A1
20020089691 Fertlitsch et al. Jul 2002 A1
20020093676 Parry Jul 2002 A1
20020098027 Koike et al. Jul 2002 A1
20020099796 Chou Jul 2002 A1
20020103827 Sesek Aug 2002 A1
20020105664 Inoue et al. Aug 2002 A1
20020107939 Ford et al. Aug 2002 A1
20020109718 Mansour et al. Aug 2002 A1
20020112037 Koss Aug 2002 A1
20020120792 Blair Aug 2002 A1
20020138279 Al-Kazily et al. Sep 2002 A1
20020138476 Suwa et al. Sep 2002 A1
20020138666 Fujisawa Sep 2002 A1
20020145627 Whitmarsh Oct 2002 A1
20020147858 Motoyama et al. Oct 2002 A1
20020152183 Soares et al. Oct 2002 A1
20020152235 Motoyama et al. Oct 2002 A1
20020152302 Motoyama et al. Oct 2002 A1
20020156688 Horn et al. Oct 2002 A1
20020156795 Edwards et al. Oct 2002 A1
20020156846 Rawat et al. Oct 2002 A1
20020171857 Hisatomi Nov 2002 A1
20020194180 Alsop et al. Dec 2002 A1
20020194350 Lu et al. Dec 2002 A1
20030002074 Miyano Jan 2003 A1
20030007170 Kajita et al. Jan 2003 A1
20030011633 Conley et al. Jan 2003 A1
20030011640 Green Jan 2003 A1
20030014515 Motoyama et al. Jan 2003 A1
20030014529 Simpson et al. Jan 2003 A1
20030033369 Bernhard Feb 2003 A1
20030035133 Berkema et al. Feb 2003 A1
20030038965 Simpson et al. Feb 2003 A1
20030043205 Hill Mar 2003 A1
20030043396 Klosterman et al. Mar 2003 A1
20030043405 Hill Mar 2003 A1
20030048470 Garcia Mar 2003 A1
20030048473 Rosen Mar 2003 A1
20030049037 Sadowara et al. Mar 2003 A1
20030053123 Wu et al. Mar 2003 A1
20030063313 Ito Apr 2003 A1
20030065766 Parry Apr 2003 A1
20030065791 Garg et al. Apr 2003 A1
20030065985 McGeorge, Jr. Apr 2003 A1
20030074267 Acharya et al. Apr 2003 A1
20030074312 White Apr 2003 A1
20030081240 Soto et al. May 2003 A1
20030084114 Simpson et al. May 2003 A1
20030084302 de Jong et al. May 2003 A1
20030088642 Price et al. May 2003 A1
20030106021 Mangrola Jun 2003 A1
20030123112 Kajita et al. Jul 2003 A1
20030131110 Chang et al. Jul 2003 A1
20030140053 Vasey Jul 2003 A1
20030142351 Sakura Jul 2003 A1
20030164987 Enomoto et al. Sep 2003 A1
20030167336 Iwamoto et al. Sep 2003 A1
20030174356 Cherry et al. Sep 2003 A1
20030182632 Murdock et al. Sep 2003 A1
20030184552 Chadha Oct 2003 A1
20030184590 Will Oct 2003 A1
20030184782 Perkins Oct 2003 A1
20030187922 Ohara et al. Oct 2003 A1
20030188193 Venkataramappa Oct 2003 A1
20030188260 Jensen et al. Oct 2003 A1
20030197883 Lay et al. Oct 2003 A1
20030212982 Brooks et al. Nov 2003 A1
20030223766 Imai Dec 2003 A1
20030225796 Matsubara Dec 2003 A1
20030225829 Pena et al. Dec 2003 A1
20030225894 Ito Dec 2003 A1
20030231196 Keohane et al. Dec 2003 A1
20030233437 Kitada et al. Dec 2003 A1
20040003341 alSafadi et al. Jan 2004 A1
20040008363 Suzuki et al. Jan 2004 A1
20040012628 Kropf et al. Jan 2004 A1
20040012644 Allen et al. Jan 2004 A1
20040019705 Ogura Jan 2004 A1
20040030693 Toda Feb 2004 A1
20040034786 Okamoto et al. Feb 2004 A1
20040034807 Rostowfske Feb 2004 A1
20040039990 Bakar et al. Feb 2004 A1
20040044779 Lambert Mar 2004 A1
20040046789 Inanoria Mar 2004 A1
20040054573 Shah et al. Mar 2004 A1
20040061729 Green Apr 2004 A1
20040064759 McGuire et al. Apr 2004 A1
20040068693 Rawat et al. Apr 2004 A1
20040070606 Yang et al. Apr 2004 A1
20040080511 Gilbert Apr 2004 A1
20040080771 Mihira et al. Apr 2004 A1
20040080778 Ito et al. Apr 2004 A1
20040088155 Kerr et al. May 2004 A1
20040093515 Reeves, Jr. May 2004 A1
20040098165 Butikofer May 2004 A1
20040098316 Philippe et al. May 2004 A1
20040098595 Aupperle et al. May 2004 A1
20040105104 Ishikawa et al. Jun 2004 A1
20040105122 Schaeffer Jun 2004 A1
20040109028 Stern et al. Jun 2004 A1
20040111670 Sasakuma et al. Jun 2004 A1
20040113941 Sliwa et al. Jun 2004 A1
20040117358 von Kaenel et al. Jun 2004 A1
20040117784 Endoh Jun 2004 A1
20040122659 Hourihane et al. Jun 2004 A1
20040125403 Furst et al. Jul 2004 A1
20040128349 Maruyama Jul 2004 A1
20040130744 Wu et al. Jul 2004 A1
20040130749 Aoki Jul 2004 A1
20040133525 Singh et al. Jul 2004 A1
20040150663 Kim Aug 2004 A1
20040158471 Davis et al. Aug 2004 A1
20040161257 Ishihara Aug 2004 A1
20040162076 Chowdry et al. Aug 2004 A1
20040165209 Aoki et al. Aug 2004 A1
20040169881 Sato Sep 2004 A1
20040179229 Laughlin Sep 2004 A1
20040181747 Hull et al. Sep 2004 A1
20040187018 Owen et al. Sep 2004 A1
20040193678 Trufinescu et al. Sep 2004 A1
20040199538 Matsuda et al. Oct 2004 A1
20040203358 Anderson Oct 2004 A1
20040205118 Yu Oct 2004 A1
20040205533 Lopata et al. Oct 2004 A1
20040205620 Nishikiori et al. Oct 2004 A1
20040212823 Chavers et al. Oct 2004 A1
20040215671 Hyakutake et al. Oct 2004 A1
20040221231 Madril et al. Nov 2004 A1
20040223778 Zwiefelhofer Nov 2004 A1
20040226993 Fulcher et al. Nov 2004 A1
20040227968 Nakamura et al. Nov 2004 A1
20040230500 Imago Nov 2004 A1
20040230637 Lecoueche et al. Nov 2004 A1
20040236862 Ito Nov 2004 A1
20040254955 Reese et al. Dec 2004 A1
20040255263 Ando Dec 2004 A1
20040261010 Matsuishi Dec 2004 A1
20040268229 Paoli et al. Dec 2004 A1
20040268306 Cheng et al. Dec 2004 A1
20050005094 Jamieson et al. Jan 2005 A1
20050015472 Catania et al. Jan 2005 A1
20050015585 Kurose Jan 2005 A1
20050022112 Kato Jan 2005 A1
20050026593 Anderson et al. Feb 2005 A1
20050028086 Itavaara et al. Feb 2005 A1
20050044248 Mihira et al. Feb 2005 A1
20050055475 MacKay et al. Mar 2005 A1
20050057560 Bibr et al. Mar 2005 A1
20050060046 Ito et al. Mar 2005 A1
20050060564 Murakami et al. Mar 2005 A1
20050063010 Giannetti Mar 2005 A1
20050068581 Hull et al. Mar 2005 A1
20050071507 Ferlitsch Mar 2005 A1
20050071746 Hart et al. Mar 2005 A1
20050076291 Yee et al. Apr 2005 A1
20050080649 Alvarez et al. Apr 2005 A1
20050086584 Sampathkumar et al. Apr 2005 A1
20050091087 Smith et al. Apr 2005 A1
20050091490 Ogura Apr 2005 A1
20050091671 Deem et al. Apr 2005 A1
20050097458 Wilson May 2005 A1
20050102616 Thurston May 2005 A1
20050108353 Yamamoto May 2005 A1
20050114267 Miwa et al. May 2005 A1
20050114658 Dye et al. May 2005 A1
20050114766 Yamamoto May 2005 A1
20050119955 Dang et al. Jun 2005 A1
20050129423 Lester et al. Jun 2005 A1
20050131715 Trethewey Jun 2005 A1
20050138547 Muhanna et al. Jun 2005 A1
20050149576 Marmaros et al. Jul 2005 A1
20050152334 Okamoto et al. Jul 2005 A1
20050185217 Nishizawa et al. Aug 2005 A1
20050195221 Berger et al. Sep 2005 A1
20050203747 Lecoeuche Sep 2005 A1
20050210399 Filner et al. Sep 2005 A1
20050223413 Duggan et al. Oct 2005 A1
20050231747 Bledsoe et al. Oct 2005 A1
20050231755 Araumi et al. Oct 2005 A1
20050246428 Araumi Nov 2005 A1
20050257134 Goodman et al. Nov 2005 A1
20050257148 Goodman et al. Nov 2005 A1
20050262440 Stanciu et al. Nov 2005 A1
20050265744 Uruta Dec 2005 A1
20060004738 Blackwell et al. Jan 2006 A1
20060007480 Yokokura Jan 2006 A1
20060010180 Kawamura et al. Jan 2006 A1
20060015734 Atobe Jan 2006 A1
20060028397 O'Rourke Feb 2006 A1
20060031411 Gimson et al. Feb 2006 A1
20060038004 Rielly et al. Feb 2006 A1
20060041443 Horvath, Jr. Feb 2006 A1
20060045386 Fukuoka et al. Mar 2006 A1
20060056873 Kimura Mar 2006 A1
20060059434 Boss et al. Mar 2006 A1
20060064647 Tapuska et al. Mar 2006 A1
20060075251 Correl et al. Apr 2006 A1
20060077119 Zhang et al. Apr 2006 A1
20060077411 Mathieson et al. Apr 2006 A1
20060077413 Lum et al. Apr 2006 A1
20060077414 Lum et al. Apr 2006 A1
20060077423 Mathieson et al. Apr 2006 A1
20060077426 Lovat et al. Apr 2006 A1
20060077427 Zhang et al. Apr 2006 A1
20060077428 Lovat et al. Apr 2006 A1
20060077429 Zhang et al. Apr 2006 A1
20060077430 Zhang et al. Apr 2006 A1
20060077431 Zhang et al. Apr 2006 A1
20060077432 Lovat et al. Apr 2006 A1
20060077433 Zhang et al. Apr 2006 A1
20060077434 Zhang et al. Apr 2006 A1
20060077435 Lovat et al. Apr 2006 A1
20060077436 Zhang et al. Apr 2006 A1
20060077437 Lovat et al. Apr 2006 A1
20060077438 Lovat et al. Apr 2006 A1
20060077439 Yamamura et al. Apr 2006 A1
20060077440 Stevens et al. Apr 2006 A1
20060077442 Lum et al. Apr 2006 A1
20060077443 Lum et al. Apr 2006 A1
20060077444 Lum et al. Apr 2006 A1
20060077445 Yamamura et al. Apr 2006 A1
20060077446 Lum et al. Apr 2006 A1
20060077447 Sojian et al. Apr 2006 A1
20060077448 Plewnia et al. Apr 2006 A1
20060077449 Lum et al. Apr 2006 A1
20060077450 Reddy et al. Apr 2006 A1
20060077451 Nguyen et al. Apr 2006 A1
20060077452 Nguyen et al. Apr 2006 A1
20060077453 Plewnia et al. Apr 2006 A1
20060077454 Lum et al. Apr 2006 A1
20060078345 Lovat et al. Apr 2006 A1
20060078346 Lovat et al. Apr 2006 A1
20060080123 Plewnia Apr 2006 A1
20060080124 Plewnia Apr 2006 A1
20060080129 Reddy et al. Apr 2006 A1
20060080184 Zhang et al. Apr 2006 A1
20060080185 Lovat et al. Apr 2006 A1
20060080731 Zhang et al. Apr 2006 A1
20060085430 Yamamura et al. Apr 2006 A1
20060085835 Istvan et al. Apr 2006 A1
20060086788 Zhang et al. Apr 2006 A1
20060090128 Reddy et al. Apr 2006 A1
20060092097 Reddy et al. May 2006 A1
20060095541 Sojian et al. May 2006 A1
20060095542 Reddy et al. May 2006 A1
20060103588 Chrisop et al. May 2006 A1
20060103873 Reddy et al. May 2006 A1
20060107197 Friend et al. May 2006 A1
20060107212 Lovat et al. May 2006 A1
20060107224 Friend et al. May 2006 A1
20060112123 Clark et al. May 2006 A1
20060117257 Hasson et al. Jun 2006 A1
20060119883 Lovat et al. Jun 2006 A1
20060154227 Rossi et al. Jul 2006 A1
20060162076 Bartlett et al. Jul 2006 A1
20060165105 Shenfield et al. Jul 2006 A1
20060168355 Shenfield et al. Jul 2006 A1
20060174196 Zhang et al. Aug 2006 A1
20060184522 McFarland et al. Aug 2006 A1
20060198653 Plewnia et al. Sep 2006 A1
20060200748 Shenfield Sep 2006 A1
20060200749 Shenfield Sep 2006 A1
20060221941 Kishinsky et al. Oct 2006 A1
20060224405 White et al. Oct 2006 A1
20060235742 Castellanos et al. Oct 2006 A1
20060277286 Zhang et al. Dec 2006 A1
20060279474 Lum et al. Dec 2006 A1
20060279475 Lum et al. Dec 2006 A1
20070022180 Cocotis et al. Jan 2007 A1
20070041035 Sembower et al. Feb 2007 A1
20070061129 Barreiro Mar 2007 A1
20070078805 Reddy et al. Apr 2007 A1
20070089049 Gormish et al. Apr 2007 A1
20070091010 Richardson et al. Apr 2007 A1
20070094103 Hyakutake et al. Apr 2007 A1
20070146823 Borchers et al. Jun 2007 A1
20070147610 Kethi Reddy Jun 2007 A1
20070173266 Barnes Jul 2007 A1
20070174894 Matsunaga Jul 2007 A1
20070186150 Rao et al. Aug 2007 A1
20070201654 Shenfield Aug 2007 A1
20070201655 Shenfield Aug 2007 A1
20070226608 Virk et al. Sep 2007 A1
20070233902 Trefler et al. Oct 2007 A1
20070283274 Mettifogo Dec 2007 A1
20070291293 Bellagamba et al. Dec 2007 A1
20080022267 Johnson et al. Jan 2008 A1
20080046806 Reddy et al. Feb 2008 A1
20080072162 Dauerer et al. Mar 2008 A1
20080155396 Dubinko et al. Jun 2008 A1
20080162116 Briggs et al. Jul 2008 A1
Foreign Referenced Citations (77)
Number Date Country
1160657 Dec 2001 EP
09160441 Dec 1995 JP
08234945 Sep 1996 JP
8234945 Sep 1996 JP
09293036 Nov 1997 JP
09330190 Dec 1997 JP
10013695 Jan 1998 JP
10154190 Jun 1998 JP
10240490 Sep 1998 JP
10269184 Oct 1998 JP
2000112691 Apr 2000 JP
2000174949 Jun 2000 JP
2000207108 Jul 2000 JP
2002259071 Feb 2001 JP
2001268296 Sep 2001 JP
200284383 Mar 2002 JP
2002140195 May 2002 JP
2002171380 Jun 2002 JP
2002175195 Jun 2002 JP
2002221877 Aug 2002 JP
2002236830 Aug 2002 JP
2002298049 Oct 2002 JP
2002312148 Oct 2002 JP
2002324049 Nov 2002 JP
2002330253 Nov 2002 JP
2002351644 Dec 2002 JP
2003022258 Jan 2003 JP
2003050781 Feb 2003 JP
2003157155 May 2003 JP
2003178023 Jun 2003 JP
2003196554 Jul 2003 JP
2003198792 Jul 2003 JP
2003208484 Jul 2003 JP
2003209644 Jul 2003 JP
2003216368 Jul 2003 JP
2003216395 Jul 2003 JP
2003223299 Aug 2003 JP
2003260853 Sep 2003 JP
2003281227 Oct 2003 JP
2003288179 Oct 2003 JP
2003308195 Oct 2003 JP
200430448 Jan 2004 JP
2004074530 Mar 2004 JP
2004088561 Mar 2004 JP
2004094313 Mar 2004 JP
2004128561 Apr 2004 JP
2004118549 May 2004 JP
2004164157 Jun 2004 JP
2004185396 Jul 2004 JP
2004213356 Jul 2004 JP
2004215309 Jul 2004 JP
2004222247 Aug 2004 JP
2004228686 Aug 2004 JP
2004228687 Aug 2004 JP
2004240752 Aug 2004 JP
2004246771 Sep 2004 JP
2004310326 Nov 2004 JP
2004310516 Nov 2004 JP
2004276271 Dec 2004 JP
2004358800 Dec 2004 JP
2005014591 Jan 2005 JP
2005033460 Feb 2005 JP
2005059496 Mar 2005 JP
2005070979 Mar 2005 JP
2005078278 Mar 2005 JP
2005084891 Mar 2005 JP
2005115543 Apr 2005 JP
2005004243 Jun 2005 JP
2005209059 Aug 2005 JP
2005219440 Aug 2005 JP
2005235034 Sep 2005 JP
2005269250 Sep 2005 JP
2006053905 Feb 2006 JP
2006140898 Jun 2006 JP
WO0118754 Mar 2001 WO
WO0133381 May 2001 WO
WO0198864 Dec 2001 WO
Related Publications (1)
Number Date Country
20080079974 A1 Apr 2008 US