In one implementation, a request for a print job for a printer having an email address is received. An identifier value for the requested print job is provided to a user. An identifier value input by the user is received. The user-input identifier value is verified, and the print job is released for printing based on the identifier value received from the user being successfully verified.

Patent
   9069501
Priority
Feb 28 2012
Filed
Feb 28 2012
Issued
Jun 30 2015
Expiry
Feb 28 2032
Assg.orig
Entity
Large
0
220
EXPIRED<2yrs
10. A non-transitory storage device containing machine-readable instructions that, when executed by a central processing unit (CPU), cause the CPU to:
discover a web-enabled printer based on physical proximity of the printer to a user device;
receive, from a user of the user device, a request for selection of the printer for a print job
generate a one-time use uniform resource locator (URL) for the print job, the one-time use URL generated with a universally unique identifier (UUID);
map the UUID to the selected printer;
provide an identifier value for the print job to the user device;
using the one-time use URL, insert the print job into a print queue of the selected printer;
receive as input the identifier value input by the user of the user device;
verify the user-input identifier value; and
release the print job for printing based on the identifier value received from the user being successfully verified.
1. A system, comprising:
a storage device containing machine-readable instructions; and
a central processing unit (CPU) coupled to said storage device and to execute the machine-readable instructions to:
discover a web-enabled printer based on physical proximity of the printer to a user device, and
after discovery of the printer based on physical proximity of the printer to the user device, perform each of:
receive, from a user of the user device, selection of the printer for a print job,
generate a one-time use uniform resource locator (URL) for the print job,
provide an identifier value for the print job to the user device,
using the one-time use URL, transmit the print job to a print queue of the selected printer,
receive as input the identifier value input by the user,
verify the user-input identifier value, and
release the print job for printing based on the identifier value received from the user being successfully verified.
16. A method, comprising:
discovering a web-enabled printer based on physical location of a user device, including identifying to a user of the user device discovered printers within a proximity of the user device;
for a print job, receiving a selection of a printer from the discovered printers, including receiving the selection from the user of the user device without informing the user of an email address associated with the selected printer; and
in response to discovering the web-enabled printer and receiving the selection of the printer from the discovered printers, further comprising:
generating a one-time use uniform resource locator (URL) for the print job;
providing to the user device an identifier value associated with the selected printer;
using the one-time use URL, transmitting the print job to the selected printer;
receiving as an input the identifier value provided by the user;
verifying the identifier value provided by the user; and
releasing the print to the selected printer upon the identifier value being successfully verified.
2. The system of claim 1 wherein the CPU executes the machine-readable instructions to generate the identifier value based on receiving a request for the print job.
3. The system of claim 1 wherein the identifier value is used only once.
4. The system of claim 1 wherein the CPU executes the machine-readable instructions to:
transmit a list of discovered printers to the user device, and
receive, from the user of the user device, selection of the printer from the list of discovered printers.
5. The system of claim 1 wherein the CPU executes the machine-readable instructions to receive a request from the user to discover a web-enabled printer for the print job.
6. The system of claim 1 wherein the CPU executes the machine-readable instructions to:
generate the one-time use URL with a universally unique identifier (UUID),
map the UUID to the printer selected by the user, and erase the mapping of the UUID to the selected printer upon release of the print job for printing.
7. The system of claim 1 wherein physical proximity is based on a satellite-based positioning receiver associated with the user device.
8. The system of claim 1 wherein physical proximity is based on a location provided by the user.
9. The system of claim 1 wherein the CPU executes the machine-readable instructions to:
receive selection of the print job by the user at an input device of the printer, and
receive the identifier value input by the user at the input device of the printer.
11. The storage device of claim 10 wherein the request for selection of the printer is received after the discovery of the web-enabled printer based on physical proximity of the printer to the user device.
12. The storage device of claim 11 further wherein each of the following are performed after the discovery of the web-enabled printer based on physical proximity of the printer to the user device:
generate the one-time use URL for the print job,
map the UUID to the selected printer,
provide the identifier value for the requested print job to the user device,
insert the print job into the print queue of the selected printer,
receive as input the identifier value input by the user of the user device,
verify the user-input identifier value, and
release the print job for printing.
13. The storage device of claim 10 wherein physical proximity is based on a satellite-based positioning receiver associated with the user device or based on a location provided by the user.
14. The storage device of claim 10 wherein the machine-readable instructions cause the CPU to:
receive a request from the user to discover a web-enabled printer for the print job,
transmit a list of discovered printers to the user device, and
receive, from the user of the user device, selection of the printer from the list of discovered printers.
15. The storage device of claim 10 wherein the machine-readable instructions cause the CPU to erase the mapping of the UUID to the selected printer upon the print job being released for printing.
17. The method of claim 16 further comprising queuing the print job pending release and transmitting the print job to the selected printer upon the identifier value being successfully verified.
18. The method of claim 16 further comprising mapping a universally unique identifier (UUID) to the selected printer and including the UUID in a one time use the one-time use URL used to transmit the print job to the selected printer.
19. The method of claim 18 further comprising erasing said mapping upon releasing the print job.
20. The method of claim 16 further comprising generating the identifier value based on a random number.

A web-enabled printer is a printer that has internet connectivity. A web-enabled printer has an associated email address. A user of a computing device such as a smart phone can email a document to the web-enabled printer, and the printer will print the emailed document.

Printing to a web-enabled printer requires knowledge of the email address associated with the printer. Knowledge of the printer's email address is fine if, for example, the printer belongs to the person desiring to use the printer. However, in some situations, the person using the computing device to initiate the print job is different than the person that owns the web-enabled printer the former person desires to use.

For example, a person may be in a hotel lobby in which a web-enabled printer is located. For that person to email a document to the printer, the hotel management would need to tell the person the email address of the hotel's web-enabled printer. And once the printer's email address becomes known, the hotel management may find it difficult to control the use of the hotel's printer.

For a detailed description of various examples, reference will now be made to the accompanying drawings in which:

FIG. 1 shows a system in accordance with various examples;

FIG. 2 shows a system implementing a user device or server in accordance with various examples;

FIG. 3 shows a method in accordance with various examples;

FIG. 4 shows a method in accordance with various examples; and

FIG. 5 shows a method in accordance with various examples.

Certain terms are used throughout the following description and claims to refer to particular system components. As one skilled in the art will appreciate, computer companies may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In the following discussion and in the claims, the terms “including” and “comprising” are used in an open-ended fashion, and thus should be interpreted to mean “including, but not limited to . . . .” Also, the term “couple” or “couples” is intended to mean either an indirect, direct, optical or wireless electrical connection. Thus, if a first device couples to a second device, that connection may be through a direct electrical connection, through an indirect electrical connection via other devices and connections, through an optical electrical connection, or through a wireless electrical connection.

FIG. 1 illustrates a system 100 in accordance with various examples. System 100 includes a user device 102 that is able to communicate through a cloud service 110 to a web-enabled printer 120. Although one user device 102 is shown in FIG. 1, the system 100 works with any number of user devices 102. The user device 102 uses the cloud service 110 to select a web-enabled printer and send a print job to the selected web-enabled printer. The user initially registers him or herself in order to use the cloud service. Part of the registration process is for a user name to be assigned to or otherwise selected by the user. By way of example, the user name may be the user's email address. As explained below, the a user of the user device 102 selects a web-enabled printer 120 and initiates a print job to that printer without knowledge of the selected printer's email address.

The user device 102 can be any type of computing device. Examples include smart phones and notebook computers. The user device 102 includes an input device 104 (e.g., a keypad, keyboard, etc.) and a display 106. In some embodiments, the input device 104 and display 106 are implemented in the form of a touchscreen.

Each web-enabled printer 120 comprises a printer that can connect directly to the Internet or other type of network. Each printer 120 includes an input device 122 such as a keypad as well a display 123. A unique email address is associated with each web-enabled printer 120. If the user of a user device 102 knew the email address of a particular web-enabled printer, the user could email a document stored or otherwise accessible to the user device 102 to the email address of a printer. The target web-enabled printer 120 will receive the email and print the document. However, in accordance with various embodiments, the user of the user device 102 is not informed of the email address of the web-enabled printers. Each web-enabled printer 120 is registered with the cloud service 110. Part of the registration process involves providing the physical location (e.g., postal address, longitude and latitude, etc.) of the printer.

The cloud service 110 is implemented on, for example, a computing system such as a server with which the user device 102 and the web-enabled printers 120 communicate. FIG. 2 illustrates an example of such a computing system. Computing system 150 in FIG. 2 includes a central processing unit (CPU) 152 coupled to a non-transitory storage device 154 and a network interface 156. The storage device 154 may be implemented as any form of non-transitory storage media such as random access memory (RAM), a hard disk drive, Flash storage, or combinations thereof. The storage device 154 includes web-enabled printer code 160, which comprises machine readable instructions that are executed by the CPU 152 to impart the computing system 150 with some or all of the functionality described herein. The hardware diagram of FIG. 2 may also apply to the architecture of the user device 102.

In accordance with various embodiments, when a user of the user device 102 wants to send a print job to a web-enabled printer 120, the user first selects a printer to receive the print job. In some embodiments, the user device 102 includes satellite-based positioning receiver such as a Global Positioning System (GPS) receiver. That receiver provides an indication as to the physical location (e.g., coordinates) of the user device. In other embodiments, the user may input into the user device the location (e.g., postal address). The user's user device 102 provides its location to the cloud service 110. The locations of the various web-enabled printers 120 have previously been provided to the cloud service 110 via the aforementioned registration process. The cloud service 110 performs a printer discovery process by which the cloud service identifies which printers 120 are close to the user's user device. The distance from the user device 102 that the cloud service will search for printers 120 may be programmable or fixed at given distance (e.g., 100 feet). The cloud service 110 provides information to the user device 102 as to which printers 120 are nearby the user device. Such information may be provided in the form of a list of printer names or in the form of map data showing the location of the user device 102 as well as the location of printers 120 present on the map data given the resolution chosen by the user of the user device 102. In accordance with various embodiments, the cloud service 110 does not provide the email address of the discovered web-enabled printers 120 to the user device. The cloud service 110 generates and provides a URL. This URL is provided to the user device 102 along with the list of printers. Providing this URL eliminates the need for user device 102 to know the printers' email address.

The user of the user device 102 then selects one of the web-enabled printers identified by the cloud service 110 to receive a print job from the user device. The cloud service 110 transmits the print job (e.g., document) to the web-enabled printer selected by the user via the URL generated by the cloud service 110. The URL generated by the cloud service 110 may include a universally unique identifier (UUID) that the cloud service 110 maps to, or otherwise associates with, the web-enabled printer selected by the user of the user device 102. The unique URL (unique due, for example, to the UUID included in the URL) points to a representational state transfer application programming interface (REST API). The REST API is a programmatic interface to which clients such as user devices 102 can connect to programmatically initiate a print job. When initiating a print job, the user device 102 will connect to the URL provided by the cloud service 110. The user device may provide additional information on how the print should appear on paper.

The cloud service 110 also generates an identifier value for the print job. The identifier value may be, or may be based on, a random number. The identifier value may be universally unique, but in other implementations the same identifier value may be used more than once on different print jobs. The identifier value is different than the UUID included in the URL. The identifier value comprises an alphanumeric character string in some examples. The identifier value may be a personal identifier (PIN). The cloud service 110 transmits the identifier value to the user device 102 which displays the identifier value on the display 106 for the user to see.

The cloud service 110 further inserts the print job to a print queue corresponding to the selected printer 120. The term print queue refers to any type of storage paradigm for a print job such as a print box or other type of data structure. The cloud service maintains such a queue for each web connected printer. The print job is held in queue by the cloud service for a configurable time duration (e.g., 24 hours) to be sent to the printer after the correct identifier value is provided. The print queue can be viewed on the display 123 of the selected printer 120.

Having knowledge of the identifier value, the user approaches the targeted printer, views the print queue/print box on the display 123 of the printer 122. The user selects the print job in the queue and inputs the identifier value the user received into the input device 122 of the printer. Access to the printer may be controlled by a person other than the user of the user device. For example, the printer may be owned by the owner of the business in which the user is attempting to print a document. The user of the user device 102 may not be permitted to input the identifier value until the business' representative (e.g., store or hotel clerk) says so. The business' representative may require payment for the printing service from the user before permitting the user to enter the identifier value. The identifier value can be entered directly into the printer's input device 122 or an input device otherwise coupled to or accessible by the printer 120.

Once the user does enter the identifier value, which should match the identifier value generated by the cloud service, the printer 120 transmit the user-entered identifier value to the cloud service 110 which verifies the user-entered identifier value. This verification process may include the cloud service 110 comparing the user-entered identifier value provided to the cloud service by the printer with the identifier value originally generated by the cloud service for that particular print job.

If the two identifier values match, the user-entered identifier value is determined by the cloud service 110 to be successfully verified. If the identifier values do not match, the user-entered identifier value is determined by the cloud service 110 not to be successfully verified. If the user-entered identifier value is successfully verified, the cloud service 110 releases the print job and the job data is sent to the web-enabled printer 120. Releasing the print job means that the printer 120 will actively begin to print the print job initiated by the user of the user device. If, however, the user-entered identifier value is not successfully verified, the cloud service 110 will not release the job and the job will continue to be held by the cloud service 110 and not printed. When a job is not successfully released from the server, after the threshold period of time noted above (e.g., 24 hours), the cloud service 110 will purge from the queue the job information and the document received as part of the print job.

FIGS. 3-5 show various methods in accordance with various embodiments. FIG. 3 illustrates a method 200. The various actions shown in FIG. 3 can be performed in the order shown, or in a different order. Further, two or more of the actions may be performed in parallel rather than serially. Reference is made below to a “server.” The server referenced is the server 150 that implements the functionality of the cloud service 110 described above.

At 201, method 200 includes the server discovering one or more web-enabled printers based on physical proximity of such printers to a user device 102 (e.g., a user device 102 through which a user is attempting to initiate a print job). At 202, method 200 includes the server 150 receives a request for a printer having an email address to print a requested print job. The request may originate from the user device 102. At 204, the server provides an identifier value to a user of the user device 102 that originated the request. At 206, the server 150 receives as input an identifier value provided by a user. From potentially multiple print jobs, the user selects his or her desired job on the printer's display 123 and, when prompted by the printer, provides the identifier value into the input device of the printer targeted by the print job as explained above. Each print job may be identified on the printer's display using the user names associated with each user (e.g., user's email address as explained above). At 208, the server 150 verifies the user-provided identifier value. At 210, the server 150 causes the print job to be released based on the user-provided identifier value being successfully verified.

FIG. 4 shows a method 250. The various actions shown in FIG. 4 can be performed in the order shown, or in a different order. Further, two or more of the actions may be performed in parallel rather than serially. Reference is made below to a “server.” The server referenced is the server 150 that implements the functionality of the cloud service 110 described above.

At 252, the server 150 discovers a web-enabled printer 120 based on physical location. As explained above, the server 150 has the physical location of the registered printers 120. When a user desired to initiate a print job to a web-enabled printer, the server 150 receives information specifying the physical location of the user's user device 102. The server 150 then determines which printers 120 are in the vicinity of the user device, and provides a list of nearby printers to the user device.

At 254, the server 150 receives a selection of a printer from the user of the user device without having informed the user of the email address of the selected printer. At 256, the server 150 provides an identifier value associated with the selected printer to the user's user device 102. At 258, the server 150 receives as input an identifier value provided by a user after the use selects the print job on the printer's display as explained above. The user provides the identifier value into the input device of the printer targeted by the print job as explained above.

At 260, the server 150 determines whether the user-provided identifier value is correct for the selected print job. If the user-provided identifier value is correct, then at 262, the server causes a print job to be released to the targeted printer. If the user-provided identifier value is not correct, then at 264, the print job is not released and the print job therefore is not printed.

FIG. 5 shows a method 270. The various actions shown in FIG. 5 can be performed in the order shown, or in a different order. Further, two or more of the actions may be performed in parallel rather than serially. Reference is made below to a “server.” The server referenced is the server 150 that implements the functionality of the cloud service 110 described above.

At 272, the user of a user device 102 initiates a request to discover nearby web-enabled printers to initiate a print job. This action can be performed by the user running an application on the user device 102 to access the cloud service 110.

At 274, the server 150 discovers web-enabled printers 120 in the vicinity of the user's user device 102. As explained above, the server 150 previously is provided with the physical location of the registered printers 120. When a user desired to initiate a print job to a web-enabled printer, the server 150 receives information specifying the physical location of the user's user device 102. The server 150 then determines which printers 120 are in the vicinity of the user device, and provides a list of nearby printers to the user device. At 276, the user of the user device selects a particular printer 120 form the set of printers provided by the server 150.

At 278, the server 250 generates a one-time use URL with a UUID, and maps the UUID to the printer 120 selected by the user (280). Mapping the UID to the printer may entail the server storing information in a database to associate the UUID to the printer. The server 150 also generates an identifier value (e.g., PIN) at 282 and at 284 transmits the identifier value to the user's user device for the user to see.

At 286, the server receives the print job from the user device 102 at the URL created at 278 and inserts the job to print queue of the printer. The job will held on the server pending receipt by the printer of a release command from the server. After the user selects the print job on the printer's display 123 as described previously, the user enters (288) the identifier value provided to the user at 284 into the printer's input device 122. At 290, the printer sends the user-entered identifier value to the sever 150 for verification. The user-entered identifier value is verified by the server at 292 by, for example, comparison with the identifier value generated by the server at 282. If the identifier value is successfully verified, then at 294, the server 150 sends the print job data to the selected printer, and at 296, the server erases the mapping of the UUID to the selected printer preventing additional access to the printer through that UUID. If, however, the identifier value is not successfully verified, then the print job is not released as indicated at 298.

The above discussion is meant to be illustrative of the principles and various embodiments of the present invention. Numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations and modifications.

Patruni, Satish Kumar, Saroday, Nagaraj Sathyanarayana

Patent Priority Assignee Title
Patent Priority Assignee Title
5090231, Oct 07 1988 SENTREK INDUSTRIES, LTD Electronic compass system
5287194, Nov 25 1992 Xerox Corporation Distributed printing
5559993, Mar 11 1993 HER MAJESTY THE QUEEN AS REPRESENTED BY THE MINISTER OF NATIONAL DEFENCE OF HER MAJESTY S CANADIAN GOVERNMENT Hardware circuit for securing a computer against undesired write and/or read operations
5832191, Apr 30 1997 Hewlett-Packard Company Method and apparatus for automatically enabling communication with a network printer
5862471, Mar 21 1995 Qualcomm Incorporated Method and apparatus for providing roaming indication with charge information
6285889, Aug 08 1996 WSOU Investments, LLC Information output system, method for outputting information and terminal devices for outputting information via mobile communication network
6335795, Sep 15 1997 Ricoh Company, LTD Method for customizing print attribute choices based on selected model, media, and printer
6337745, Mar 01 1996 EMTEX SOFTWARE, INC Routing print jobs
6359642, Jan 27 1999 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Printer control system
6417913, Jan 14 2000 FUJIFILM Corporation Method and apparatus for ordering photographic prints and printing apparatus for producing the same
6516157, May 16 1997 Minolta Co., Ltd. Printing system that calculates printing cost using data input via a remote data input terminal and returns calculated printing cost to the remote data input terminal
6552813, Jun 11 1996 Oracle America, Inc Directing print jobs in a network printing system
6560621, Dec 29 1997 Intel Corporation World wide web formatting for program output through print function
6606162, Jul 21 1999 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Network printer groups
6621589, Sep 24 1999 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Print job processing in a printer network using selected printer attributes
6650433, Jan 25 2000 CIMPRESS USA INCORPORATED Managing print jobs
6650946, Dec 09 1999 Heidelberger Druckmaschinen Aktiengesellschaft Apparatus and method for planning and controlling production sequences
6678750, Jun 04 2001 HEWLETT-PACKARD DEVELOPMENT COMPANY L P Wireless networked peripheral devices
6748471, Oct 16 2000 Electronics for Imaging, Inc Methods and apparatus for requesting and receiving a print job via a printer polling device associated with a printer
6751732, Jul 12 2001 Pitney Bowes Inc. Method and system for secure delivery and printing of documents via a network device
6757070, Aug 21 2001 Advanced Hi-Tech Corporation Universal print driver
6806976, Sep 21 2000 HEWLETT-PACKARD DEVELOPMENT COMPANY L P Systems and methods for activating confidential print jobs from a remote electronic device
6859832, Oct 16 2000 FIERY, LLC Methods and systems for the provision of remote printing services over a network
6909518, Jun 18 2001 HEWLETT-PACKARD DEVELOPMENT COMPANY L P System and method for configuring a printing system
6978299, Oct 16 2000 FIERY, LLC Print driver apparatus and methods for forwarding a print job over a network
6993562, Mar 21 2002 Kyocera Mita Corporation Method and system to print via email
6996611, Jul 30 1999 Canon Kabushiki Kaisha System for searching for apparatus connected to network and apparatus employed by same system, and control method therefor
7019861, Oct 03 2000 ONE Q TECHNOLOGIES A S Computer printer control method
7051095, Aug 30 2000 HEWLETT-PACKARD DEVELOPMENT COMPANY L P Locating device resources on a global scale
7064856, Aug 04 2000 UNIPRINT NET CORP Printer driver system for remote printing
7088462, Jun 29 2001 LinkedIn Corporation Print manager having a user interface for specifying how documents are directed to print devices
7096265, Dec 28 2001 HEWLETT-PACKARD DEVELOPMENT COMPANY L P System and method for intelligent routing of tasks across a distributed network
7106470, Aug 10 2001 HEWLETT-PACKARD DEVELOPMENT COMPANY L P Direct printing from internet database
7113300, Jul 12 2001 CALLAHAN CELLULAR L L C Method and system for secure delivery and printing of documents
7120667, Oct 30 2001 HEWLETT-PACKARD DEVELOPMENT COMPANY L P Method and system for ad hoc networking of computer users
7143210, Nov 12 2003 PATOIS TELECOM LIMITED LIABILITY COMPANY User-defined printer selection administration policy
7167264, Jul 31 2001 Canon Kabushiki Kaisha E-mail responsive printing apparatus
7167930, Jun 06 1995 Apple Inc Centralized queue in network printing systems
7184159, Jul 24 2002 HEWLETT-PACKARD DEVELOPMENT COMPANY L P Architecture for printing via the internet
7187462, Jul 03 2002 HEWLETT-PACKARD DEVELOPMENT COMPANY L P Proximity-based print queue adjustment
7191327, Apr 04 2002 INTRINSYC SOFTWARE INTERNATIONAL, INC Internet-enabled device provisioning, upgrade and recovery mechanism
7212297, Jun 05 2002 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Universal printing system
7218411, Jul 26 2002 Ricoh Company, LTD Method for nesting finishing operations in a print environment
7225220, Jul 21 2000 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P On-line selection of service providers in distributed provision of services on demand
7231605, Apr 07 2000 Intel Corporation Method and apparatus for mapping electronic devices coupled to a wireless network
7239877, Oct 07 2003 Accenture Global Services Limited Mobile provisioning tool system
7256900, Aug 31 1999 Seiko Epson Corporation Printers with positional sensors
7265867, Aug 04 2000 UNIPRINT NET CORP Printer driver system for remote printing
7272407, Feb 18 2003 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Display on wireless mobile device
7315824, Dec 04 2001 CANON DEVELOPMENT AMERICAS, INC Internet printing by hotel guests
7352485, Aug 29 2001 Ricoh Company, LTD Printing method, storage medium and program for performing a printing operation and a printing device
7365872, Jan 06 2003 Microsoft Technology Licensing, LLC Client computer system, method and computer readable medium comprising executable instructions for rendering printable documents in a native printer language on the network
7441003, Apr 17 2000 Fuji Xerox Co., Ltd. Payment based electronic mail printing system utilizing search criteria
7576883, Feb 06 2006 Xerox Corporation Secure printing via a wireless internet service
7647074, Jun 16 2003 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Cellular telephone with print preview system
7656547, Sep 30 2003 Toshiba Corporation; Toshiba Tec Kabushiki Kaisha System and method for optimized routing of print jobs
7760385, Jul 22 2005 Oki Data Corporation Printing system
7791747, Apr 12 2005 International Business Machines Corporation Security of printed documents through end user presence sensing
7800768, Sep 07 2005 Seiko Epson Corporation Printing assist system, printing assist program, and printing assist method
7941458, Jun 26 2008 Microsoft Technology Licensing, LLC Abstraction layer for online/offline resource access
7945573, Feb 11 2008 T-MOBILE INNOVATIONS LLC Dynamic transcoding to stitch streaming digital content
8010469, Sep 25 2000 CA, INC Systems and methods for processing data flows
8027049, Dec 04 2001 Ricoh Company, LTD Remote e-mail printing
8045485, Apr 03 2006 Seiko Epson Corporation Monitoring technique of a device connected to a network
8115943, Sep 13 2002 Ricoh Company, LTD Image forming apparatus and print process method
8126904, Feb 09 2009 REPIO, INC System and method for managing digital footprints
8179549, Aug 04 2008 INTUIT INC. Method and system for email-based printing
8223355, Jun 16 2003 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Cellular telephone protocol adaptive printing
8253956, Jul 05 2005 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Method of notifying print job information and printer and printing system using the same
8346903, Nov 29 2005 Xerox Corporation Print server, mobile computing device, system and method for printing using a mobile computing device
8468240, Sep 14 2010 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Locating network resources
8570566, Sep 17 2010 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P System and method that provides user interface on mobile network terminal for releasing print jobs based on location information
20010013053,
20010043357,
20020002592,
20020013869,
20020044299,
20020051178,
20020078160,
20020083121,
20030002072,
20030036350,
20030053122,
20030078987,
20030107762,
20030115199,
20030115458,
20030160997,
20030184557,
20030227641,
20030231328,
20040024787,
20040039647,
20040100505,
20040125145,
20040125401,
20040130744,
20040137855,
20040137928,
20040162804,
20040176117,
20040176118,
20040203439,
20040218201,
20040218213,
20040230646,
20040252329,
20040252332,
20040253990,
20050073522,
20050088681,
20050099639,
20050111856,
20050259287,
20050270569,
20060012828,
20060028681,
20060044598,
20060158681,
20060258341,
20060259394,
20070010915,
20070027990,
20070030516,
20070050373,
20070088814,
20070093265,
20070124436,
20070127069,
20070195345,
20070229879,
20070229880,
20070229891,
20070233834,
20070297009,
20080004075,
20080072254,
20080096486,
20080132252,
20080134316,
20080180712,
20080180726,
20080184162,
20080225326,
20080239366,
20080246988,
20090009802,
20090033976,
20090147299,
20090168100,
20090174894,
20090177381,
20090216912,
20090257082,
20090279126,
20090287408,
20090287806,
20090296125,
20090300226,
20090303523,
20100020349,
20100161832,
20100169003,
20100174698,
20100238493,
20100277753,
20100290073,
20100309508,
20100309510,
20110063668,
20110096354,
20110145085,
20110145930,
20110196731,
20110202914,
20110242576,
20110271197,
20110276986,
20110277027,
20120019864,
20120019867,
20120026536,
20120038948,
20120066374,
20120069386,
20120140285,
20120250074,
20120262753,
20130038897,
20130107312,
20130321855,
CN100470513,
CN101004668,
CN101237424,
CN101520829,
EP1107512,
EP1271300,
EP1450515,
EP1646037,
EP1937007,
FR2907620,
GB2360914,
JP2001197150,
JP2001344163,
JP2002112347,
JP2002245003,
JP2002264431,
JP2002290416,
JP2002305521,
JP2006277197,
JP2007133817,
KR20030042078,
WO41064,
WO174011,
WO2007112334,
WO2008148576,
WO2009120154,
WO2012112159,
WO2012147089,
WO2014003712,
///
Executed onAssignorAssigneeConveyanceFrameReelDoc
Feb 28 2012Hewlett-Packard Development Company, L.P.(assignment on the face of the patent)
Feb 28 2012KUMAR, PATRUNI S HEWLETT-PACKARD DEVELOPMENT COMPANY, L P ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0277840156 pdf
Feb 28 2012SATHYANARAYANA, SARODAY N HEWLETT-PACKARD DEVELOPMENT COMPANY, L P ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0277840156 pdf
Date Maintenance Fee Events
Jul 24 2018M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Feb 20 2023REM: Maintenance Fee Reminder Mailed.
Aug 07 2023EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
Jun 30 20184 years fee payment window open
Dec 30 20186 months grace period start (w surcharge)
Jun 30 2019patent expiry (for year 4)
Jun 30 20212 years to revive unintentionally abandoned end. (for year 4)
Jun 30 20228 years fee payment window open
Dec 30 20226 months grace period start (w surcharge)
Jun 30 2023patent expiry (for year 8)
Jun 30 20252 years to revive unintentionally abandoned end. (for year 8)
Jun 30 202612 years fee payment window open
Dec 30 20266 months grace period start (w surcharge)
Jun 30 2027patent expiry (for year 12)
Jun 30 20292 years to revive unintentionally abandoned end. (for year 12)