IP Library Granted Patent US 10,423,375
Granted Patent B2
US 10,423,375 · App. 15/969,542 · Granted Sep 24, 2019

Non-transitory computer-readable storage medium, client computer, and print method

Inventor: Michael Rosemann (Wallenhorst, DE)
Assignee: Canon Europa N.V.
G06F3/1259G06F3/121G06F3/1207G06F3/1248G06F3/1261G06F3/1288G06F3/1298G06F3/122
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,423,375
App. No.
15/969,542
Granted
Sep 24, 2019
Kind
B2
Abstract

A printer driver maintains a list of print servers that a client computer can use to send a print job to a printer, and renders the print job into a page description language. A print processor creates a first print queue for sending the rendered print job to a first print server and adds the rendered print job to the created first print queue, and monitors sending of the rendered print job in the first print queue. If the sending of the rendered print job from the client computer to the first print server is not successful, the print processor creates a second print queue and adds a duplicate print job to the second print queue by duplicating the rendered print job in the first print queue, the printer driver sends the duplicate print job in the second print queue to a second print server.

Claims (63)

1. A non-transitory computer-readable storage medium storing a printer driver package comprising a printer driver and a print processor, wherein:

the printer driver is configured, when installed on a client computer:

to receive and store print server information identifying a plurality of print servers that the client computer can use to send a print job to a printer; and

to render the print job into a page description language usable by a printer for printing; and

the print processor is configured:

to create a first print queue for sending the rendered print job from the client computer to a first print server of the plurality of print servers and to add the rendered print job to the created first print queue; and

to monitor sending of the rendered print job in the first print queue, to the first print server, wherein, after receiving the rendered print job, the first print server sends the rendered print job to the printer for printing;

wherein in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is not successful:

the print processor is configured to create a second print queue and to add a duplicate of the print job to the second print queue by duplicating the rendered print job in the first print queue;

the printer driver is configured to select a second print server from among the plurality of print servers identified in the print server information stored by the printer driver; and

the printer driver is configured to send the duplicate print job in the second print queue from the client computer to the second print server, and

wherein in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is successful:

the print processor is configured to not create the second print queue.

2. The non-transitory computer-readable storage medium storing the printer driver package according to claim 1 , wherein in a case where the print processor detects that the sending of the duplicate print job from the client computer to the second print server is not successful:

the printer driver is configured to select a third print server from among the plurality of print servers identified in the print server information stored by the printer driver; and

the printer driver is configured to send the duplicate print job in the second print queue from the client computer to the third print server.

3. The non-transitory computer-readable storage medium storing the printer driver package according to claim 1 , wherein:

the print processor is configured, in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is successful:

to update the first queue by removing the rendered print job, after a confirmation notification is received; and

the print processor is configured, in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is not successful:

to update the first print queue by removing the rendered print job after creating the second print queue; and

to update the second print queue by removing the duplicate print job, after a confirmation notification is received.

4. The non-transitory computer-readable storage medium storing the printer driver package according to claim 1 , wherein the printer driver is configured to receive and store the print server information by receiving data on the print servers that are available to the client computer from at least one of the print servers.

5. A client computer comprising a non-transitory computer-readable storage medium storing a printer driver package comprising a printer driver and a print processor, wherein:

the printer driver is configured, when installed on a client computer:

to receive and store print server information identifying a plurality of print servers that the client computer can use to send a print job to a printer; and

to render the print job into a page description language usable by a printer for printing; and

the print processor is configured:

to create a first print queue for sending the rendered print job from the client computer to a first print server of the plurality of print servers and to add the rendered print job to the created first print queue; and

to monitor sending of the rendered print job in the first print queue, to the first print server, wherein, after receiving the rendered print job, the first print server sends the rendered print job to the printer for printing;

wherein in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is not successful:

the print processor is configured to create a second print queue and to add a duplicate of the print job to the second print queue by duplicating the rendered print job in the first print queue;

the printer driver is configured to select a second print server from among the plurality of print servers identified in the print server information stored by the printer driver; and

the printer driver is configured to send the duplicate print job in the second print queue from the client computer to the second print server, and

wherein in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is successful:

the print processor is configured to not create the second print queue.

6. The client computer according to claim 5 , configured to automatically retrieve the printer driver package from the first print server.

7. The client computer according to claim 6 , wherein the automatic retrieval of the printer driver package is performed using point and print.

8. A print system comprising a client computer and a plurality of print servers, wherein the client computer comprises a non-transitory computer-readable storage medium storing a printer driver package comprising a printer driver and a print processor, wherein:

the printer driver is configured, when installed on a client computer:

to receive and store print server information identifying a plurality of print servers that the client computer can use to send a print job to a printer; and

to render the print job into a page description language usable by a printer for printing; and

the print processor is configured:

to create a first print queue for sending the rendered print job from the client computer to a first print server of the plurality of print servers and to add the rendered print job to the created first print queue; and

to monitor sending of the rendered print job in the first print queue, to the first print server, wherein, after receiving the rendered print job, the first print server sends the rendered print job to the printer for printing;

wherein in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is not successful:

the print processor is configured to create a second print queue and to add a duplicate of the print job to the second print queue by duplicating the rendered print job in the first print queue;

the printer driver is configured to select a second print server from among the plurality of print servers identified in the print server information stored by the printer driver; and

the printer driver is configured to send the duplicate print job in the second print queue from the client computer to the second print server, and

wherein in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is successful:

the print processor is configured to not create the second print queue.

9. A print method for providing resilient transmission of a print job from a client computer to a print server, the print method comprising:

downloading and installing a printer driver package including a printer driver and a print processor on a client computer:

the installed printer driver receiving and storing print server information identifying a plurality of print servers that the client computer can use to send a print job to a printer;

the printer driver rendering the print job into a page description language usable by a printer for printing; and

the print processor creating a first print queue for sending the rendered print job from the client computer to a first print server of the plurality of print servers, and adding the rendered print job to the created first print queue; and

the print processor monitoring the sending of the rendered print job in the first print queue, to the first print server, wherein, after receiving the rendered print job, the first print server sends the rendered print job to the printer for printing;

wherein in a case where the print processor detects in the monitoring step that the sending of the rendered print job from the client computer to the first print server is not successful:

the print processor creates a second print queue and adds a duplicate of the print job to the second print queue by duplicating the rendered print job in the first print queue;

the printer driver selects a second print server from among the plurality of print servers identified in the print server information stored by the printer driver; and

the printer driver sends the duplicate print job in the second print queue from the client computer to the second print server, and

wherein in a case where the print processor detects that the sending of the rendered print job from the client computer to the first print server is successful:

the print processor is configured to not create the second print queue.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2024
From: CANON EUROPA N.V.
To: NT-WARE SYSTEMPROGRAMMIERUNGS-GMBH
Reel/Frame 068269/0324 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2018
From: ROSEMANN, MICHAEL
To: CANON EUROPA N.V.
Reel/Frame 047196/0075 →
Priority Claims (1)
GB 1707218.2 · May 5, 2017 · national
Continuity (1)
Related Publication 20180321888A1 · Nov 8, 2018