IP Library Granted Patent US 7,958,205
Granted Patent B2
US 7,958,205 · App. 12/105,710 · Granted Jun 7, 2011

Method and system for communicating between a remote printer and a server

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 7,958,205
App. No.
12/105,710
Granted
Jun 7, 2011
Kind
B2
Abstract

In order to enable downloading to a mobile printer data items from a server, a method comprising the steps of establishing communication connection end points (“sockets”), communicating with the server, where the communication includes sending a request for authentication to the server, receiving an authentication response, requesting print data portions from the server, receiving the requested print data portions, and notifying the server after each print data portion has been printed. The method also includes the step of terminating their communication connection when a printing session ends or if an error occurs. The method constitutes a printer-server protocol.

Claims (147)

1. A method for enabling a mobile printer to communicate with a server and print data from the server, said method comprising:

initiating a connection from the mobile printer to a server over a network using an end point and a network address, said network address identifying the server in the network;

sending a request for authentication to the server via the connection;

receiving an authentication response from the server;

determining, at the mobile printer, that the authentication is successful based on the authentication response;

requesting print data from the server via the connection, the print data comprising at least one print data portion and at least one print data item;

receiving each of the at least one print data portion from the server;

printing the at least one print data portion with the at least one print data item located in the at least one print data portion;

notifying the server via the connection that the printing has completed; and

terminating the connection after notifying the server.

2. The method of claim 1 wherein the receiving an authentication response comprises:

receiving from the server a specified number of the at least one print data item and a specified number of the at least one print data portion.

3. The method of claim 1 , further comprising:

receiving, from the server, a specified number of copies to be printed of each of the at least one print data portion.

4. The method of claim 3 , wherein the printing comprises:

printing the specified number of copies of the at least one print data portion.

5. The method of claim 1 , wherein the at least one print data portion comprises a first print data portion and a second print data portion, and wherein the printing comprises:

printing the first print data portion before receiving the second print data portion.

6. The method of claim 3 , further comprising:

obtaining from the server an updated specified number of the at least one print data item and an updated specified number of the at least one print data portion.

7. The method of claim 1 , further comprising:

sending to the server data identifying the characteristics of the mobile printer;

receiving status information from the server, the status information indicative that the mobile printer has been registered with the server.

8. The method of claim 1 further comprising:

receiving identifying data for a first document and a second document, the identifying data comprising an offset between the first document and the second document;

receiving from the server a specific print data portion having a given size; and

increasing the offset by the given size of the specific print data portion.

9. The method of claim 1 , further comprising:

receiving from the server identifying data for a document and identifying data for the at least one print data portion, wherein the document comprises the at least one print data portion.

10. The method of claim 1 , further comprising:

receiving from the server a security indicator for the at least one print data portion, wherein the security indicator is representative of a calculation based on the at least one print data portion;

calculating, at the mobile printer, a calculated security indicator for the at least one print data portion;

determining that the calculated security indicator and the security indicator received from the server are different; and

sending to the server an indication that the at least one print data portion was not transmitted successfully.

11. The method of claim 10 , wherein the security indicator is a cyclic redundancy code.

12. The method of claim 1 wherein the at least one print data portion comprises compressed data.

13. The method of claim 12 further comprising:

uncompressing the compressed data.

14. The method of claim 3 wherein the at least one print data portion comprises compressed data.

15. The method of claim 14 further comprising:

uncompressing the compressed data.

16. A method for enabling a server to provide print data to a mobile printer, said method comprising:

establishing a connection with a mobile printer, the establishing responsive to the mobile printer initiating the connection;

receiving an authentication request from the mobile printer via the connection;

sending an authentication response to the mobile printer, the sending responsive to receipt of the authentication request;

receiving a request from the mobile printer for print data to be transmitted via the connection, the print data comprising at least one print data portion and at least one print data item;

sending each of the at least one print data portion to the mobile printer;

receiving a notification from the mobile printer via the connection that the at least one print data portion has been printed with the at least one print data item located in the at least one print data portion;

sending status information to the mobile printer responsive to receipt of the notification; and

terminating the connection responsive to sending the status information.

17. The method of claim 16 , wherein the sending the authentication comprises:

sending to the mobile printer a specified number of the at least one print data item and a specified number of the at least one print data portion.

18. The method of claim 16 , further comprising:

sending to the mobile printer an updated specified number of the at least one print data item and an updated specified number of the at least one print data portion.

19. The method of claim 16 , further comprising:

receiving from the mobile printer data identifying characteristics of the mobile printer;

determining that the characteristics of the mobile printer are not found in a database; and

registering the characteristics of the mobile printer in the database.

20. The method of claim 19 , further comprising:

determining that the at least one print data portion is the first data portion to be send to the mobile printer subsequent to registering the characteristics of the mobile printer in the database;

sending to the mobile printer at least one welcome print data portion.

21. The method of claim 16 , further comprising:

calculating a security indicator for the at least one print data portion, the security indicator based on the at least one print data portion; and

sending the security indicator to the mobile printer.

22. The method of claim 20 , further comprising:

calculating a security indicator for the at least one print data portion, the security indicator based on the at least one print data portion; and

sending the security indicator to the mobile printer.

23. The method of claim 21 wherein the security indicator is a cyclic redundancy code.

24. The method of claim 22 wherein the security indicator is a cyclic redundancy code.

25. The method of claim 16 further comprising:

compressing the at least one print data portion.

26. A printer comprising:

a processor;

at least one memory accessible by the processor, said at least one memory having computer instructions embodied therein, said instructions comprising:

instructions to initiate a connection from the printer to a server over a network using an end point and a network address, said network address identifying the server in the network;

instructions to send a request for authentication to the server via the connection;

instructions to receive an authentication response from the server;

instructions to determine that the authentication is successful based on the authentication response;

instructions to request print data from the server via the connection, the print data comprising at least one print data portion and at least one print data item;

instructions to receive each of the at least one print data portion from the server;

instructions to print the at least one print data portion with the at least one print data item located in the at least one print data portion;

instructions to notify the server via the connection that the printing has completed; and

instructions to terminate the connection after notifying the server.

27. The printer of claim 26 , wherein said instructions further comprise:

instructions to receive from the server a specified number of the at least one print data item and a specified number of the at least one print data portion.

28. The printer of claim 26 , wherein the instructions further comprise:

instructions to receive, from the server, a specified number of copies to be printed of each of the at least one print data portion.

29. The printer of claim 27 , wherein the instructions further comprise:

instructions to obtain from the server an updated specified number of the at least one print data item and an updated specified number of the at least one print data portion.

30. The printer of claim 26 , wherein the instructions further comprise:

instructions to send to the server data identifying the characteristics of the mobile printer;

instructions to receive status information from the server, the status information indicative that the mobile printer has been registered with the server.

31. The printer of claim 26 , wherein the instructions further comprise:

instructions to receive identifying data for a first document and a second document, the identifying data comprising an offset between the first document and the second document

instructions to receive from the server a specific print data portion having a given size; and

instructions to increase the offset by the given size of the specific print data portion.

32. The printer of claim 26 , wherein the instructions further comprise:

instructions to receive from the server a security indicator for the at least one print data portion, wherein the security indicator is representative of a calculation based on the at least one print data portion;

instructions to calculate, at the printer, a calculated security indicator for the at least one print data portion;

instructions to determine that the calculated security indicator and the security indicator received from the server are different; and

instructions to send to the server an indication that the at least one print data portion was not transmitted successfully.

33. The printer of claim 32 , wherein the security indicator is a cyclic redundancy code.

34. The printer of claim 26 , wherein said print data portion comprises compressed data, and wherein the instructions further comprise:

instructions to uncompress the at least one print data portion.

35. A server for providing data items to a mobile printer, said server comprising:

a processor;

at least one memory accessible by the processor, said at least one memory having computer instructions embodied therein, said instructions comprising:

instructions to establish a connection with a mobile printer, the establishing responsive to the mobile printer initiating the connection;

instructions to receive an authentication request from the mobile printer via the connection;

instructions to send an authentication response to the mobile printer, the sending responsive to receipt of the authentication request;

instructions to receiving a notification from the mobile printer via the connection that the at least one print data portion has been printed with the at least one print data item located in the at least one print data portion; and

instructions to send status information to the mobile printer responsive to receipt of the notification.

36. The server of claim 35 , wherein the instructions further comprise:

instructions to send a specified number of the at least one print data item and a specified number of the at least one print data portion.

37. The server of claim 35 , wherein the instructions further comprise:

instructions to send to the mobile printer an updated specified number of the at least one print data item and an updated specified number of the at least one print data portion.

38. The server of claim 35 , wherein the instructions further comprise:

instructions to receive from the mobile printer data identifying characteristics of the mobile printer;

instructions to determine that the characteristics of the mobile printer are not found in a database; and

instructions to register the characteristics of the mobile printer in the database.

39. The server of claim 38 , wherein the instructions further comprise:

instructions to determine that the at least one print data portion is the first data portion to be send to the mobile printer subsequent to registering the characteristics of the mobile printer in the database;

instructions to send to the mobile printer at least one welcome print data portion.

40. The server of claim 35 , wherein the computer instructions further comprise:

instructions to calculate a security indicator for the at least one print data portion, the security indicator based on the at least one print data portion; and

instructions to send the security indicator to the mobile printer.

41. The server of claim 40 , wherein the security indicator is a cyclic redundancy code.

42. The server of claim 35 , wherein the instructions further comprise:

instructions to compress the at least one print data portion.

43. A non-transitory computer readable medium having instructions stored therein for enabling a mobile printer to download print data from a server, the instructions comprising:

instructions to initiate a connection from the mobile printer to a server over a network using an end point and a network address, said network address identifying the server in the network;

instructions to send a request for authentication to the server via the connection;

instructions to receive an authentication response from the server;

instructions to determine that the authentication is successful based on the authentication response;

instructions to request print data from the server via the connection, the print data comprising at least one print data portion and at least one print data item;

instructions to receive each of the at least one print data portion from the server;

instructions to print the at least one print data portion with the at least one print data item located in the at least one print data portion;

instructions to notify the server via the connection that the printing has completed; and

instructions to terminate the connection after notifying the server.

44. A non-transitory computer-readable medium having instructions embodied therein for enabling a server to provide print data to a mobile printer the instructions comprising:

instructions to establish a connection with a mobile printer, the establishing responsive to the mobile printer initiating the connection;

instructions to receive an authentication request from the mobile printer via the connection;

instructions to send an authentication response to the mobile printer, the sending responsive to receipt of the authentication request;

instructions to receive a request from the mobile printer for print data to be transmitted via the connection, the print data comprising at least one print data portion and at least one print data item;

instructions to send each of the at least one print data portion to the mobile printer;

instructions to receive a notification from the mobile printer via the connection that the at least one print data portion has been printed with the at least one print data item located in the at least one print data portion; and

instructions to send status information to the mobile printer responsive to receipt of the notification; and instructions to terminate the connection responsive to sending the status information.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2020
From: INTELLECTUAL VENTURES ASSETS LLC
To: CEDAR LANE TECHNOLOGIES INC.
Reel/Frame 053495/0721 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBERS 7593141 AND 7609407 PREVIOUSLY RECORDED ON REEL 052491 FRAME 0084. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 1, 2020
From: INTELLECTUAL VENTURES I LLC
To: INTELLECTUAL VENTURES ASSETS 139 LLC
Reel/Frame 052555/0791 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2020
From: INTELLECTUAL VENTURES I LLC
To: INTELLECTUAL VENTURES ASSETS 139 LLC
Reel/Frame 052491/0084 →
MERGER Recorded Jun 18, 2013
From: SENSHIN CAPITAL, LLC
To: INTELLECTUAL VENTURES I LLC
Reel/Frame 030639/0279 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2010
From: POLAROID CORPORATION
To: SENSHIN CAPITAL, LLC
Reel/Frame 024327/0358 →