Senior Fitness - Exercise and Nutrition for Aging Men and Women
FREE Article Feed for your website.
Home Ownership Magazine
Party Planning Information
Article Marketing Resources
Bio-Medical Research Article Database
Informative Articles on Life, Love and Happiness
Tutorials on Business to Writing
Famous Quotes from Famous People
Song Lyric Information
New US Patent Information
Comprehensive List of Content by Category
Online Auctions and Shopping Related Articles
Article Search
Most Recent Articles
Title: Combination major appliance and pet watering system
Patent Number: 7,438,020 Issued on 10/21/2008 to Palett,   et al.

Title: Integrated pneumatic actuator and pump for dispensing controlled amounts of a fluid
Patent Number: 7,438,019 Issued on 10/21/2008 to Lofink, Jr.,   et al.

Title: Confinement ring assembly of plasma processing apparatus
Patent Number: 7,438,018 Issued on 10/21/2008 to Son

Title: Method and apparatus to color vinyl slats
Patent Number: 7,438,017 Issued on 10/21/2008 to Jabbari,   et al.

Title: Method and device for launching into the water a means for life-saving at sea from a height greater than its maximum launch height
Patent Number: 7,438,016 Issued on 10/21/2008 to Dronne,   et al.

Title: Folding top assembly with safety and convenience features
Patent Number: 7,438,015 Issued on 10/21/2008 to Schwindaman

Title: Rigid inflatable boat with easy lifesaving
Patent Number: 7,438,014 Issued on 10/21/2008 to Kim

Title: Steering mechanism for small boat having multiple propulsion units
Patent Number: 7,438,013 Issued on 10/21/2008 to Mizutani

Title: Gas supply arrangement of a marine vessel and method of providing gas in a marine vessel
Patent Number: 7,438,012 Issued on 10/21/2008 to Kackur

Title: Apparatus and method for cutting sewn material in sewing machine
Patent Number: 7,438,011 Issued on 10/21/2008 to Kondo

Title: Thread spool and cap
Patent Number: 7,438,010 Issued on 10/21/2008 to Lyman

Title: Sewing machine clutch with removable locking pin
Patent Number: 7,438,009 Issued on 10/21/2008 to Grant

Title: Sewing machine
Patent Number: 7,438,008 Issued on 10/21/2008 to Anezaki

Title: Level cut loop looper and clip assembly
Patent Number: 7,438,007 Issued on 10/21/2008 to Hall

Title: Agricultural seeding machine with compact furrow opener/closer
Patent Number: 7,438,006 Issued on 10/21/2008 to Mariman,   et al.

Title: Low NOx combustion
Patent Number: 7,438,005 Issued on 10/21/2008 to Kobayashi,   et al.

Title: MgAl2O4 spinel refractory as containment liner for high-temperature alkali salt containing environments
Patent Number: 7,438,004 Issued on 10/21/2008 to Peascoe-Meisner,   et al.

Title: Burning container
Patent Number: 7,438,003 Issued on 10/21/2008 to Wilfer

Title: Desktop
Patent Number: 7,438,002 Issued on 10/21/2008 to Murray

Title: Car body structure
Patent Number: 7,438,001 Issued on 10/21/2008 to Nakamura,   et al.

Title: Running gear for rail vehicles
Patent Number: 7,438,000 Issued on 10/21/2008 to Schneider,   et al.

Title: Overhead traveling vehicle system
Patent Number: 7,437,999 Issued on 10/21/2008 to Nakao

Title: Water-ride facility
Patent Number: 7,437,998 Issued on 10/21/2008 to Burger,   et al.

Title: Method for delivering replacement rail ties using GPS techniques
Patent Number: 7,437,997 Issued on 10/21/2008 to Herzog,   et al.

Title: Kinetic energy penetrator and method of using same
Patent Number: 7,437,996 Issued on 10/21/2008 to Turner,   et al.

Title: Axially compact mechanical igniter for thermal batteries and the like
Patent Number: 7,437,995 Issued on 10/21/2008 to Rastegar,   et al.

Title: Adhesive hinge strips for printer paper
Patent Number: 7,437,994 Issued on 10/21/2008 to Ratzloff

Title: Postage meter with improved printing slot
Patent Number: 7,437,993 Issued on 10/21/2008 to Kulpa

Title: Die assembly for a compactor
Patent Number: 7,437,992 Issued on 10/21/2008 to Schroeder

Title: System for pressing and vacuum treatment of cheese solids
Patent Number: 7,437,991 Issued on 10/21/2008 to Leffelman

Title: All-in-one disposable container for making coffee, tea and other mixed beverages
Patent Number: 7,437,990 Issued on 10/21/2008 to Duch

Title: Connecting rod for hermetic compressor
Patent Number: 7,437,989 Issued on 10/21/2008 to Yoon,   et al.

Title: Piston-cylinder device with position sensing means
Patent Number: 7,437,988 Issued on 10/21/2008 to Andersson,   et al.

Title: Blast shielding
Patent Number: 7,437,987 Issued on 10/21/2008 to Ohnstad,   et al.

Title: Landmine avoidance and protection device
Patent Number: 7,437,986 Issued on 10/21/2008 to Fuss,   et al.

Title: Weapon launched reconnaissance system
Patent Number: 7,437,985 Issued on 10/21/2008 to Gal

Title: Microtome and ultramicrotome with improved carrier arm
Patent Number: 7,437,984 Issued on 10/21/2008 to Gilchrist,   et al.

Title: Book skew clamping device
Patent Number: 7,437,983 Issued on 10/21/2008 to Burke,   et al.

Title: Unit for feeding and cutting into lengths a strip of wrapping material
Patent Number: 7,437,982 Issued on 10/21/2008 to Spirito,   et al.

Title: Modular guard system and apparatus for a power saw
Patent Number: 7,437,981 Issued on 10/21/2008 to Burke,   et al.

Title: Flux-biased electromagnetic fast tool servo systems and methods
Patent Number: 7,437,980 Issued on 10/21/2008 to Trumper

Title: Screwdriver bit
Patent Number: 7,437,979 Issued on 10/21/2008 to Wang

Title: Self-adjusting locking vise grip
Patent Number: 7,437,978 Issued on 10/21/2008 to Aldredge

Title: Hand tool having a larger operation zone
Patent Number: 7,437,977 Issued on 10/21/2008 to Hsieh

Title: Positive auto-blocking nut ensemble and torqueing tool
Patent Number: 7,437,976 Issued on 10/21/2008 to Goldbaum

Title: Wrench socket
Patent Number: 7,437,975 Issued on 10/21/2008 to De Anfrasio

Title: Rotation unit for torque tong comprising a gripping cylinder
Patent Number: 7,437,974 Issued on 10/21/2008 to Slettedal,   et al.

Title: Movement-assisted corkscrew
Patent Number: 7,437,973 Issued on 10/21/2008 to Cellini

Title: Apparatus for fastening and loosening a lid from a container
Patent Number: 7,437,972 Issued on 10/21/2008 to Yeager

Title: Drive arrangement
Patent Number: 7,437,971 Issued on 10/21/2008 to Gunton

Title: Stand tube of a bicycle
Patent Number: 7,437,970 Issued on 10/21/2008 to Chen

Title: Bicycle shift operating device
Patent Number: 7,437,969 Issued on 10/21/2008 to Ose

Title: Steering column device
Patent Number: 7,437,968 Issued on 10/21/2008 to Sawada,   et al.

Title: Gear having window holes, and method and apparatus for manufacturing the same
Patent Number: 7,437,967 Issued on 10/21/2008 to Okada

Title: Internal control device for mechanical gearbox
Patent Number: 7,437,966 Issued on 10/21/2008 to Maillard,   et al.

Title: Gear change control device and gear shift control method for work vehicle
Patent Number: 7,437,965 Issued on 10/21/2008 to Shizume

Title: Double clutch transmission
Patent Number: 7,437,964 Issued on 10/21/2008 to Gitt

Title: Power transmission
Patent Number: 7,437,963 Issued on 10/21/2008 to Haka,   et al.

Title: Spindle or worm drive for adjusting devices in motor vehicles
Patent Number: 7,437,962 Issued on 10/21/2008 to Taubmann,   et al.

Title: Gyro power starter
Patent Number: 7,437,961 Issued on 10/21/2008 to Dworzan

Title: Device for detecting labels on a carrier material
Patent Number: 7,437,960 Issued on 10/21/2008 to Priebsch

Title: In-water hull cleaning sampling device
Patent Number: 7,437,959 Issued on 10/21/2008 to Chadwick,   et al.

Title: Sterile single use sampling device
Patent Number: 7,437,958 Issued on 10/21/2008 to Sharma,   et al.

Title: Porous medium tensiometer
Patent Number: 7,437,957 Issued on 10/21/2008 to Jobin,   et al.

Title: Pull testing mechanism
Patent Number: 7,437,956 Issued on 10/21/2008 to Chao

Title: Device for determining the rotation angle of a shaft in an aircraft
Patent Number: 7,437,955 Issued on 10/21/2008 to Rennhack

Title: Six-axis force sensor
Patent Number: 7,437,954 Issued on 10/21/2008 to Sakano

Title: Method and apparatus for protection of contour sensing devices
Patent Number: 7,437,953 Issued on 10/21/2008 to DeConde,   et al.

Title: Shrouded body flow meter assembly
Patent Number: 7,437,952 Issued on 10/21/2008 to Carns,   et al.

Title: Method of using a differential pressure type flowmeter
Patent Number: 7,437,951 Issued on 10/21/2008 to McDonald,   et al.

Title: Coriolis flow rate meter with flow tube of double loop structure
Patent Number: 7,437,950 Issued on 10/21/2008 to Nakao

Title: Tertiary mode vibration type Coriolis flowmeter
Patent Number: 7,437,949 Issued on 10/21/2008 to Nakao,   et al.

Title: Ultrasonic flowmeter and ultrasonic flow rate measurement method
Patent Number: 7,437,948 Issued on 10/21/2008 to Kishiro,   et al.

Title: Magnetic flow probe
Patent Number: 7,437,945 Issued on 10/21/2008 to Feller

Title: Method and apparatus for pressure and mix ratio control
Patent Number: 7,437,944 Issued on 10/21/2008 to Melcer,   et al.

Configurable web-based imaging service that prevents time consuming jobs from printing Number:7,145,678 from the United States Patent and Trademark Office (PTO) owispatent

Home    Author Login    Submit Article    Article Search    Add Your Link    Edit Your Link    Contact Us    Advertising    Disclaimer

   

 
Web LinkGrinder.com

Top Breaking News
     Greek, Cypriot Leaders Resume Unification Talks in Nicosia by Nathan Morley
     Indonesia Tobacco Sales Grow, Raising Health Fears
     South Korea Allows Top Defector to Travel Overseas by VOA News

Title: Configurable web-based imaging service that prevents time consuming jobs from printing

Abstract: In a web-based imaging environment, a user accesses a destination service (e.g.,representing a printer), which retrieves user's imaging data production options for a processing job. The user selects desired production options, after which the destination service estimates the time duration required to process the user's job based on the selected options. If the estimated time required is greater than a predetermined threshold, the option of processing is disabled and a message is normally displayed to the user. If not, the option to process is enabled. In variations, the user's ability to process is reevaluated as the user selects differing options. In other variations, an administrator specifies the threshold, or specifies multiple user-specific thresholds, and/or thresholds specific to time of day and/or day of week and/or month. In another variation, if the user cannot process to this production device, a link to an alternative device is provided.

Patent Number: 7,145,678 Issued on 12/05/2006 to Simpson,   et al.


Inventors: Simpson; Shell S. (Boise, ID), Foster; Ward S. (Boise, ID), Livingston; Kris R. (Boise, ID)
Assignee: Hewlett-Packard Development Company, L.P. (Houston, TX)
Appl. No.: 10/001,574
Filed: October 30, 2001


Current U.S. Class: 358/1.15 ; 358/1.16; 399/81; 399/82; 399/85; 399/87; 709/208
Current International Class: G06F 3/12 (20060101); G03G 15/00 (20060101); G06F 15/16 (20060101); G06K 15/00 (20060101)
Field of Search: 358/1.15,1.1,1.13 709/208 399/81,82,85,87


References Cited [Referenced By]

U.S. Patent Documents
6044367 March 2000 Wolff
6067545 May 2000 Wolff
6130757 October 2000 Yoshida et al.
6185601 February 2001 Wolff
6463229 October 2002 Takuwa et al.
2001/0053947 December 2001 Lenz et al.
2002/0171864 November 2002 Sesek

Other References

Office World News. "Hitachi Koki: Connecting the Future of Business", Ft. Lauderdale: Jun. 2000. vol. 28, Iss. 6; p. 37. cited by examiner .
U.S. Appl. No. 09/712,336, filed Nov. 13, 2000, Shell S. Simpson. cited by other .
U.S. Appl. No. 09/874,184, filed Jun. 4, 2001, Shell S. Simpson. cited by other .
U.S. Appl. No. 09/874,427, filed Jun. 4, 2001, Shell S. Simpson. cited by other .
U.S. Appl. No. 09/924,058, filed Aug. 8, 2001, Shell S. Simpson. cited by other .
Hewlett-Packard Company, "Printing & Digital Imagingm hp LaserJet 8150 Series," http://www.pandi.hp.com/pandi-db/prodinfo.main?product=laserjet8- 150&Region=1, Jun. 13, 2001. cited by other .
Hewlett-Packard Company, "Printing & Digital Imagingm hp LaserJet 8550 Series," http://www.pandi.hp.com/pandi-db/prodinfo.main?product=laserjet8- 550&Region=1, Jun. 13, 2001. cited by other .
Xerox USA, "Specifications for Document Centre 480ST," http://www.xerox.com/go/xix/template/002.jsp?prodID=DC480ST&Xentry=US- A&Xlang=en.sub.--US& Xseg=cor, Jun. 13, 2001. cited by other.

Primary Examiner: Poon; King Y.
Assistant Examiner: Lett; Thomas J

Claims



What is claimed is:

1. A method of relieving competition between processing jobs sharing a production device, said method comprising the steps of: a. accessing from a user's browser a destination service representing at least one production device; b. retrieving said user's imaging information by said destination service; c. selecting among production options provided by said destination service for a processing job to process said imaging information using said at least one production device; d. estimating the time duration required to process said processing job using said production device with said selected production options; e. and comparing said estimated time duration with a previously determined threshold time duration, such that: f. if said estimated time duration exceeds said previously determined threshold time duration, then disabling processing of said processing job by said production device; otherwise g. if said estimated time duration does not exceed said previously determined threshold time duration, then enabling processing of said processing job by said production device.

2. The method of claim 1 wherein said user is allowed to perform selecting step c. and estimating step d. iteratively.

3. The method of claim 1 wherein said user is allowed to perform selecting step c. and estimating step d. sequentially after disabling step f.

4. The method of claim 1 further comprising displaying a message to said user after disabling step f.

5. The method of claim 1 further comprising if said processing is disabled in disabling step f., then providing said user with a link to an alternative production device.

6. The method of claim 1 wherein said previously determined threshold time duration is set by an administrator.

7. The method of claim 1 wherein said previously determined threshold time duration differs according to differing temporal periods.

8. The method of claim 7 wherein said differing temporal periods are selected from the group consisting of hours of the day, days of the week, and days of the month.

9. The method of claim 1 wherein said previously determined threshold time is assigned according to said user, such that each of a plurality of differing previously determined threshold time durations is assigned to at least one of a plurality of individual users.

10. The method of claim 9 wherein each of said plurality of differing previously determined threshold time durations can differ further according to differing temporal periods.

11. The method of claim 1 further comprising if said processing is disabled in disabling step f., then providing said user an option of reserving a deferred start time for processing of said processing job using said production device in accordance with said selected production options, such that if said user opts to reserve a start time, then setting a deferred start time, storing said processing job during a deferral period until said deferred start time occurs, and then deferred processing said processing job using said production device in accordance with said selected production options.

12. The method of claim 11 wherein said deferred processing job is stored in a medium selected from the group consisting of a hard disk and an image store associated with said user's identity.

13. The method of claim 11 wherein said setting said deferred start time includes avoiding conflict with unavailable deferred start times of said production device.

14. The method of claim 11 further comprising estimating the resources required to process said processing job using said production device with said selected production options.

15. The method of claim 14 further comprising reserving quantities of said respective resources required to process said processing job during said deferral period.

16. The method of claim 15 wherein said reserved resources required to process said processing job are monitored during said deferral period.

17. The method of claim 16 wherein during said deferral period a warning message is displayed whenever any of said reserved resources is depleted to a quantity substantially equal to said reserved quantity of said reserved resource.

18. The method of claim 17 wherein during said deferral period said reserved resources are reported as if said reserved quantities of said reserved resources had already been consumed.

19. The method of claim 17 wherein during said deferral period said warning message is removed if said reserved resources are replenished above said reserved quantity.

20. The method of claim 1 further comprising if said processing is disabled in disabling step f., then providing said user an option of processing said processing job using said production device, subject to interruption by a subsequent processing job of a subsequent user.

21. The method of claim 20 further comprising dynamically displaying job status including interrupt status at said user's browser.

22. The method of claim 20 wherein said subsequent interrupting processing job is a local processing job of a user local to said production device, such that processing of interrupted processing job resumes after said processing of said local processing job is complete, said local processing job being loaded and unloaded manually at said production device.

23. The method of claim 20 wherein said interrupted processing job is stored while interrupted, such that said interrupted processing job is deferred but not canceled.

24. The method of claim 20 wherein if said interrupted processing job includes more than one output copy, then said interrupted processing job is allowed to complete the currently processing output copy of said more than one output copy before being interrupted.

25. The method of claim 20 further comprising separating output copies of said interrupted processing job from output copies of said interrupting processing job using an operation selected from the group consisting of delivering output copies of said interrupted processing job and said interrupting processing job into separate output bins, delivering output copies into a common output bin, such that output copies of said interrupted processing job are offset relative to output copies of said interrupting processing job, and delivering output copies into a common output bin, such that output copies of said interrupted processing job are separated relative to output copies of said interrupting processing job by separator sheets.

26. A destination service representing a production device, said destination service operable to: download web content into a user's browser; retrieve said user's imaging information; select under user interactive control via said web content from among production options for processing said imaging information using said production device; estimate the time duration required to process said imaging information using said production device in accordance with said selected production options; compare said estimated time duration with a previously determined threshold time duration; if said estimated time duration exceeds said previously determined threshold time duration, disable processing said imaging information by said production device; otherwise if said estimated time duration does not exceed said previously determined threshold time duration, enable processing said imaging information by said production device.

27. The destination service of claim 26 further operable to select among production options and to estimate the time duration iteratively.

28. The destination service of claim 27 further operable to select among production options and to estimate the time duration iteratively after determining that said estimated time duration exceeds said previously determined threshold time duration.

29. The destination service of claim 26 further operable to display a message to said user after determining that said estimated time duration exceeds said previously determined threshold time duration.

30. The destination service of claim 26 further operable after determining that said estimated time duration exceeds said previously determined threshold time duration to provide said user with a link to an alternative production device.

31. The destination service of claim 26 further operable to determine differing said previously determined threshold time durations according to differing temporal periods.

32. The destination service of claim 31 wherein said differing temporal periods are selected from the group consisting of hours of the day, days of the week, and days of the month.

33. The destination service of claim 26 further operable to assign differing said previously determined threshold time durations according to user, such that each of a plurality of differing previously determined threshold time durations is assigned to at least one of a plurality of said users.

34. The destination service of claim 33 wherein each of said plurality of differing previously determined threshold time durations can differ further according to differing temporal periods.
Description



RELATED APPLICATIONS

The present application is related to co-pending and commonly assigned U.S. patent application Ser. No. 09/712,336 entitled "SYSTEM AND METHOD FOR PROCESSING DATA IN A DISTRIBUTED ENVIRONMENT," filed Nov. 13, 2000; co-pending and commonly assigned U.S. patent application Ser. No. 09/874,184 entitled "SYSTEM AND METHOD FOR PRINTING FROM A WEB APPLICATION," filed Jun. 4, 2001; co-pending and commonly assigned U.S. patent application Ser. No. 09/874,427 entitled "DYNAMIC PRODUCTION DEVICE REPRESENTATION IN A DISTRIBUTED ENVIRONMENT," filed Jun. 4, 2001; and co-pending and commonly assigned U.S. patent application Ser. No. 09/924,058 entitled "SYSTEM AND METHOD AND PROGRAM PRODUCT FOR MULTIUSER PROFILE OPERATIONS AND GROUP COMPOSITION STORE" filed Aug. 8, 2001, the disclosures of which are all hereby incorporated herein by reference.

TECHNICAL FIELD

The invention relates to a system and method for processing of imaging data in a distributed computing environment, and more particularly to a system and method of relieving competition between processing jobs sharing a production device.

BACKGROUND

In the workplace environment there is increasing usage demand on printers and other web based production devices. This occurs in part because emergent in-house publishing, typified by a few large jobs each requiring large numbers of copies, and traditional office printing and copying, conversely typified by many short jobs randomly distributed during the workday, often compete for the same time and resources of a shared production device. If not controlled during the workday, a few large jobs can dominate a printer or other shared processing equipment, to the exclusion of multiple short jobs and to the loss of productivity of users who must wait for equipment availability. Alternatively, some large job users are reluctant to process their job during the normal workday, because it would dominate the production device. Particularly, this situation is aggravated by the recent proliferation of printers having optional or extended scanning, copying, and facsimile capabilities. Thus not only short vs. long run job users, but also multifunctional users can compete for a single production device. It is desirable in the art to develop a system and method for relieving competition of large and small processing jobs for a shared production device, without allowing large processing jobs to dominate the shared production device.

SUMMARY OF THE INVENTION

The present invention is directed to an approach for relieving competition in a web based imaging environment of large and small processing jobs for a shared production device, without allowing large processing jobs to dominate the shared production device. A user accesses a web-based destination service (e.g., representing a printer), which retrieves user's imaging data and provides the user the means of configuring available production options. The user defines a processing job for the imaging data, selecting desired production options, after which the destination service estimates the time duration required to process the user's job using the selected options on the production device represented by the destination service.

In the present approach, if the estimated amount of time required is greater than a predetermined threshold, the option of processing is disabled. If not, the option to process is enabled. Typically, a message is displayed to the user indicating that the processing option is disabled. In a variation, the user's ability to process is reevaluated as the user selects differing options. In another variation, an administrator can specify the threshold. In another variation, the administrator can specify the threshold on a user-by-user basis (allowing some users to process more time consuming jobs than other users). In another variation, the size of job allowed to be processed can be specified based on time of day and/or day of week and/or month. In another variation, both the user and the time of day and/or day of week and/or month can be used to specify the size of job that can be processed. In another variation, if the user cannot process using this production device, a link to an alternative device is provided.

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1A is a simplified schematic diagram representing a logical overview of a typical web-based imaging system, in accordance with embodiments of the present invention;

FIG. 1B is a simplified schematic diagram depicting various aspects of destination services, in accordance with embodiments of the present invention;

FIG. 1C is a schematic diagram illustrating in more detail various aspects of the network of FIG. 1A, in accordance with embodiments of the present invention;

FIG. 2A is a simplified block diagram illustrating a configurable web-based imaging service that relieves competition between processing jobs sharing a production device, in accordance with embodiments of the present invention;

FIG. 2B is a flow diagram depicting operation of an embodiment of the configurable web-based imaging service illustrated in FIG. 2A;

FIG. 3 is a flow diagram depicting operation of a web-based system for interrupting the processing of multiple copies of a user's job, in accordance with embodiments of the present invention;

FIG. 4 is a flow diagram depicting the operation of a web-based system providing the ability to make a reservation for deferred processing of a user's job, in accordance with embodiments of the present invention;

FIG. 5A is a schematic diagram depicting a client-server network system in accordance with embodiments of the present invention; and

FIG. 5B is a schematic diagram depicting a variation of the client-server network system of FIG. 5A, which is tailored to faster data rates or limited client machine storage capacity.

GLOSSARY OF TERMS AND ACRONYMS

The following terms and acronyms are used throughout the Detailed Description:

"API". An application programming interface (API) is a library of programmatic methods provided by a system of some kind (an example is a web-based imaging system, as in the present invention) that enables client programs (web application content operating within the browser is one example) to interact with that system. One method of creating an API is to create a library. For example, in JAVA.TM., a library (conventionally called a jar file) is created by defining a class or classes, compiling the class or classes, and grouping the class or classes into a library. For example, the following class could be created: class BaseConversionAPI {static public String convertBaseToBase (String in Number, int inBase, int outBase) {// Code for returning a string representing inNumber converted to outBase}}

That class would then be compiled with the command: java.exe BaseConversionAPI .java

NOTE: Programs are typically stored in text files, which are "compiled" in order to create "object files" which contain the executable (or interpretable) instructions. In this case, the program is contained in the file BaseConversionAPI.java. The act of compiling creates a file named "BaseConversionAPI.class" containing instructions for a specific computing architecture (in this case the JAVA.TM. Virtual Machine) corresponding to the program.

Next in this example, a Jar file would be created: jar.exe cvf BaseConversionAPI.tar BaseConversionAPI.class

This command creates a "library" file containing the BaseConversionAPI class. This last step is not absolutely required. In some instances, API's are provided as simply files containing executable instructions (such as the BaseConversionAPI.class file).

References regarding the creation of API's: http://www.library.yale.edu/orbis2/public/activity/AP.html

Note that the API's to network services (graphic store, composition store, and user profile store, all to be discussed below) would be created to be accessible through a remote invocation technology such as CORBA, JAVA.TM.-RMI, DCOM.TM., RPC, or SOAP. A wide variety of references are available that describe how API's can be created to be accessible through a remote invocation technology, such as one of the technologies noted above.

"Client-Server". A model of interaction in a distributed system in which a program at one site sends a request to a program at another site and waits for a response. The requesting program is called the "client," and the program which responds to the request is called the "server." In the context of the World Wide Web (discussed below), the client is a "Web browser" (or simply "browser") which runs on the computer of a user; the program which responds to browser requests by serving Web pages, or other types of Web content, is commonly referred to as a "Web server."

"Composition." Composition, also referred to as a "graphics composition," comprises a file with links to graphic data serviced as a single unit, i.e., a graphic. The file also usually includes information on the placement of those graphics on a sequence of canvases. It describes how to combine one or more graphics from one or more sources onto a sequence of canvasses, in a variety of different ways. The use of compositions allows multiple compositions to reference a graphic in a graphic store without having to duplicate the graphic.

"Composition store". Composition store refers to a service (ideally implemented as a network service) that stores and provides access to imaging composition(s) that can be accessed by the user or web services. In this context, providing "access" includes providing methods for building compositions, modifying compositions, and accessing them piecemeal. For example, a set of methods available for execution via the composition store might include the methods Get a Composition, Create a Composition, Delete a Composition, and Modify a Composition.

"Content." A set of executable instructions that is served by a server to a client and that is intended to be executed by the client so as to provide the client with certain functionality. Web content refers to content that is meant to be executed by operation of a Web browser. Web content, therefore, may non-exhaustively include one or more of the following: HTML code, SGML code, XML code, XSL code, CSS code, JAVA.TM. applet, JavaScript.TM. and C-"Sharp" code.

"Exchange infrastructure." An exchange infrastructure is a collection of services distributed throughout a network that store imaging data associated with a particular user through a user profile.

"Firewall." A firewall filters out unwanted communication packets in one or more directions. By way of example, in one implementation of a firewall, requests from inside a firewall may be made to access data on the outside of the firewall, and responses to such requests are typically permitted. Communications initiated from outside the firewall to devices inside of the firewall are typically not permitted. Generally, the firewall may be implemented by a firewall proxy server that allows devices inside the firewall to pass HTTP requests to web servers outside the firewall. Obviously, other protocols may be used to implement communication through the firewall.

"Generic access instructions." A generic access instruction refers to an executable instruction that is intended to cause the executing device to generate generic access requests in order to access a set of target graphic data. These instructions call methods provided by, for example, an imaging extension, but are executing within a JVWM/JAVA.TM. or similar environment (which the imaging extension is part of). Methods provided by the environment in which the program is executed are typically called an "Application Programming Interface" (API). Note that a generic access instruction does not include the location of the target graphic data. Typically, the target graphic data is pre-selected (generally by a user) and its location is determined from information that is maintained locally within the executing device.

For purposes of this application, the term "generic access instruction" refers to an executable instruction that is intended to cause the executing device to generate generic access requests in order to access a set of target data. A generic access instruction, however, does not include the location of the target data itself and neither does the generic access requests. Importantly, the target data is pre-selected (typically by a user) and its location is determined from information that is maintained locally within the executing computer or otherwise associated with the user. For this reason, the target data for a particular computer is said to be "associated" with that computer or more specifically with that user. Thus, for example, the target data that is associated with computer "A" is the data that computer "A" will access in response to a generic access instruction. The target data that is associated with computer "B" is the data that computer "B" will access in response to the identical generic access instruction.

Furthermore, in the case wherein the target data represents an image, that image is referred to herein as the "target image." In this simplified example, it will be assumed that all generic access instructions specified by the system wide standard mentioned above are for accessing data that describes an image.

"Graphic data." Graphic data refers to digital data capable of being represented as two dimensional graphics, such as a Portable Document Format ("PDF") file or a Joint Photographic Experts Group ("JPEG") file.

"Graphic store." Graphic store refers to a network service or a storage device for storing graphics data that can be accessed by the user or other network services. The graphic store preferably accepts the graphic data in multiple standard file formats, and the graphic data is converted into these file formats when necessary depending on the implementation.

"Hyperlink." A navigational link from one document to another, from one portion (or component) of a document to another, or to a Web resource, such as a JAVA.TM. applet. Typically, a hyperlink is displayed as a highlighted word or phrase that can be selected by clicking on it using a mouse to jump to the associated document or document portion or to retrieve a particular resource.

"Hypertext System." A computer-based informational system in which documents (and possibly other types of data entities) are linked together via hyperlinks to form a usernavigable "web."

"HTML" (HyperText Markup Language). A standard coding convention and set of codes for attaching presentation and linking attributes to informational content within documents. (HTML 2.0 is currently the primary standard used for generating Web documents.) During a document authoring stage, the HTML codes (referred to as "tags") are embedded within the informational content of the document. When the Web document (or HTML document) is subsequently transferred from a Web server to a browser, the codes are interpreted by the browser and used to display the document. Additionally in specifying how the Web browser is to display the document, HTML tags can be used to create links to other Web documents (commonly referred to as "hyperlinks"). For more information on HTML, see for example Ian S. Graham, The HTML Source Book, John Wiley and Sons, Inc., 1995 (ISBN 0471-11894-4).

"HTTP" (HyperText Transport Protocol). The standard World Wide Web client-server protocol used for the exchange of information (such as HTML documents, and client requests for such documents) between a browser and a Web server. HTTP includes a number of different types of messages which can be sent from the client to the server to request different types of server actions. For example, a "GET" message, which has the format GET <URL>, causes the server to return the document or file located at the specified URL.

"Imaging composition." An imaging composition comprises links to imaging data serviced as a single unit.

"Imaging data." Imaging data refers to digital data capable of being represented as two dimensional graphics, such as a Portable Document Format ("PDF") file or a Joint Photographic Experts Group ("JPEG") file.

"Imaging data store." Imaging data store refers to a network service or a storage device for storing imaging data that can be accessed by the user or other network services. The imaging data store preferably accepts the imaging data in multiple standard file formats, and the imaging data is converted into these file formats when necessary depending on the implementation.

"Internet." A collection of interconnected or disconnected networks (public and/or private) that are linked together by a set of standard protocols (such as TCP/IP and HTTP) to form a global, distributed network. (While this term is intended to refer to what is now commonly known as the Internet, it is also intended to encompass variations which may be made in the future, including changes and additions to existing standard protocols.)

"PDA" (Personal Digital Assistant). A small hand-held computer used, for example, to write notes, track appointments, send email and browse the web with generally with far less storage capacity than a desktop computer.

"Personal imaging repository." A personal imaging repository is a conceptual term describing the exchange infrastructure used to exchange graphics composition and graphics data with web services. Users are associated with their graphics data through user profiles. It should be noted that the personal imaging repository 50 can represent any type or combination of data storage devices.

"URL" (Uniform Resource Locator). A unique address which fully specifies the location of a file or other resource on the Internet or a network. The general format of a URL is protocol: //machine address: port/path/filename.

"User Information." User information is identification and security information used in accessing graphics composition(s) and graphics data associated with a particular user profile. It is preferably accessed either directly or indirectly through methods provided by an extension component integrated into the web browser.

"User Interface." The junction between a user and a computer program providing commands or menus through which a user communicates with a program. For example, in the client-server model defined above, the server usually generates and delivers to a client a user interface for communicating with a program operating on or controlled by the server device. Where the server is a web server, the user interface is a web page. The web page when displayed by the client device presents a user with controls for selecting options, issuing commands, and entering text. The controls displayed can take many forms. They may include push-buttons, radio buttons, text boxes, scroll bars, or pull-down menus accessible using a keyboard and/or a pointing device such as a mouse connected to a client device. In a non-graphical environment, the controls may include command lines allowing the user to enter textual commands.

"World Wide Web" ("Web"). Used herein to refer generally to both (i) a distributed collection of interlinked, user-viewable hypertext documents (commonly referred to as Web documents or Web pages) that are accessible via the Internet, and (ii) the client and server software components which provide user access to such documents using standardized Internet protocols. Currently, the primary standard protocol for allowing applications to locate and acquire Web documents is HTTP, and the Web pages are encoded using HTML. However, the terms "Web" and "World Wide Web" are intended to encompass WAP and WML for mobile phone web browsers, as well as other current and future markup languages and transport protocols which may be used in place of (or in addition to) HTML and HTTP.

"Web Site." A computer system that serves informational content over a network using the standard protocols of the World Wide Web. Typically, a Web site corresponds to a particular Internet domain name, such as "HP.com," and includes the content associated with a particular organization. As used herein, the term is generally intended to encompass both (i) the hardware/software server components that serve the informational content over the network, and (ii) the "back end" hardware/software components, including any non-standard or specialized components, that interact with the server components to perform services for Web site users. Importantly, a Web Site can have additional functionality, for example, a Web site may have the ability to print documents, scan documents, etc.

"Web service." A web service is intended to refer to a service that is provided (at least in part) by a web server. But a web service is a broader concept than a web server. In this regard, a "Web server" is a program that, using the client/server model and the World Wide Web's Hypertext Transfer Protocol (Hypertext Transfer Protocol), serves the files that form Web pages to Web users (whose computers contain HTTP clients that forward their requests). Every computer on the Internet that contains a Web site must have a Web server program. The most popular Web servers currently are Microsoft's Internet Information Server (Internet Information Server), which comes with the Windows NT server; Netscape FastTrack.TM. and Enterprise.TM. servers; and Apache, a Web server for UNIX-based operating systems. Other Web servers include Novell's Web Server for users of its NetWare.TM. operating system and IBM's family of Lotus Domino servers, primarily for IBM's OS/390.TM. and AS/400.TM. customers.

Web servers often come as part of a larger package of Internet- and intranet-related programs for serving e-mail, downloading requests for File Transfer Protocol files, and building and publishing Web pages. This larger package is referred to as the web service.

Parameters for a Web server include how well it works with various operating systems and other servers, its ability to handle server-side programming, and publishing, search engines, and site building tools in the package.

DETAILED DESCRIPTION

FIG. 1A is a simplified schematic diagram representing a logical overview of a typical web-based imaging system, in accordance with embodiments of the present invention. User 100 interfaces with client program 16, typically a web browser, which is logically connected through data path 51 with network 10. Also logically connected with network 10 through respective data paths 52 55 are for example among other entities source service 24, an imaging service 32, destination service 34, and imaging store 30 (for further description of a source service, a destination service, and an imaging store see co-pending and commonly assigned U.S. patent application Ser. Nos. 09/712,336, 09/874,184, 09/874,427, and 09/924,058, cited above, the disclosures of which have been incorporated herein by reference). Network 10 can be any of a variety of network types, including for example Internet, Intranet, and Ethernet, and the transmission medium of network 10 and data paths 51 55 can include electrically conductive cable, optical fiber, semiconductor, wireless, or any combinations of these. Data paths 51 55 need not be physical links but can represent data flows through any media. In general a web-based imaging system can include multiple client programs 16, source services 24, destination services 34, and imaging stores 30 each interconnected with a network 10 and having a unique network address, typically represented by a Uniform Resource Locator (URL). Imaging service 32 is a logical entity providing client program 16 access to multiple destination services 34 by accessing and downloading interfaces, typically web pages conventionally generated using HyperText Markup Language (HTML) coding. Web documents are conventionally located and acquired throughout network 10 using HyperText Transfer Protocol (HTTP).

FIG. 1B is a simplified schematic diagram depicting various aspects of destination services 34, in accordance with embodiments of the present invention. A destination service 34 typically is a destination web service that represents one or more production devices 152, 154 on network 10. Production devices 152, 154 include printers; paper handling accessories such as binders, sorters, or folders; e-mail clients; facsimile devices; web servers; and data storage devices. Production devices are not, however, limited to those above, but may include any devices capable of electronically or physically saving, displaying, formatting, or transferring a target image. Some production devices perform a single type of service, for example printing, whereas other production devices perform multiple services. A self-representing production device 152 contains an embedded destination service 34, which represents production device 152 on network 10, allowing production device 152 to be connected directly to network 10 and accessed directly by client program 16. Client program 16 is typically a web browser that runs in a client machine 12, commonly a desktop or laptop and potentially a handheld computer or personal digital assistant (PDA). On the other hand, a production device 154 such as a conventional printer is incapable of self-representation and consequently must be connected to and controlled by an external destination service 34 running on an intermediate device such as a desktop computer or a print server machine.

In some embodiments of the present invention, source service 24 generates a set of data representing a printable version of a target image, which includes a controlled symbol referring to a predetermined symbol set. Only when the printable version of the target image is accessed by an appropriate destination service that contains the predetermined symbol set, for example appropriate destination service 35, can the controlled symbol in the target image be produced or displayed. Any other destination service 34 not containing the predetermined symbol set, including for example destination services accessible through imaging service 32, can print or display at most only a proxy symbol in place of the controlled symbol, when printing or displaying the image. The data representing the printable version of the target image are referenced by a composition stored in imaging store 30, as described in more detail below.

FIG. 1C is a schematic diagram illustrating in more detail various aspects of network 10 of FIG. 1A, in accordance with embodiments of the present invention. Client program 16 running on operating system 14 in client machine 12 is logically interconnected through data path 52 of network 10 with source service 24, typically a source web service that runs on server machine 22 and generates interfaces, typically web content 20. When client program 16 browses to source service 24, web content 20, usually including executable content, is downloaded into the browser window of client program 16. Executable content 20 accesses imaging store 30 via application programming interfaces (APIs) contained in a modified imaging extension 18 of client program 16, for example through data paths 55 and 56. For further description of imaging extensions containing APIs see co-pending and commonly assigned U.S. patent application Ser. Nos. 09/874,184 and 09/924,058, cited above, the disclosures of which have been incorporated herein by reference. Modified imaging extension 18, described in more detail below, can be accessed by, for example, JAVA.TM. applets for accessing imaging store 30, although other web programming technologies can be used.

In some embodiments of the present invention, a preview version of the printable version of the target image is incorporated into web content 20 of accessed destination services 34, 35, including destination services 34, 35 accessed through imaging service 32 which provides links to source and destination services, and is previewed to user 100 through client program 16 in the context of the capabilities of accessed destination services 34, 35. When user 100 selects the "print now" option, the entire production process is controlled indirectly by user 100 through client program 16.

In the workplace environment there is increasing usage demand on printers and other web based production devices. This occurs in part because emergent in-house publishing, typified by a few large jobs each requiring large numbers of copies, and traditional office printing and copying, conversely typified by many small jobs randomly distributed through the workday, often compete for the same time and resources of a shared production device. If not controlled during the workday, a few large jobs can dominate a printer or other shared processing equipment, to the exclusion of multiple short jobs and to the loss of productivity of users who must wait for equipment availability.

Particularly, this situation is aggravated by the recent proliferation of printers having optional or extended scanning, copying, and facsimile capabilities, including for example LaserJet.TM. models 8150mfp.TM. and 8550mfp.TM. manufactured by the Hewlett Packard Company and the Document Center.TM. 480ST.TM. manufactured by the Xerox Corporation. Thus not only small vs. large job users, but also multifunctional users can compete for a single production device.

FIG. 2A is a simplified block diagram illustrating a configurable web-based imaging service that relieves competition between processing jobs sharing a production device, in accordance with embodiments of the present invention. FIG. 2B is a flow diagram depicting the operation of an embodiment of the configurable web-based imaging service illustrated in FIG. 2A. At block 221 of FIG. 2B a user collects imaging information into personal imaging repository 30 illustrated in FIG. 2A, and at block 222 accesses destination service 34 representing production device 201, which at block 223 downloads web content 20 over data link 204 into user's browser 16. At block 224 web content 20 retrieves imaging information from user's personal imaging repository 30 via imaging extension 18 and data link 207, and at block 225 displays production job options in the window of browser 16. Alternatively, at block 224 destination service 34 retrieves imaging information by directly accessing user's personal imaging repository over data link 205.

After the user selects desired production options as illustrated at block 226, destination service 34 at block 227 performs an analysis of how much time and resources are required to process the job using the selected production job options and taking into account the imaging information retrieved from user's personal imaging repository 30. If the amount of time required is determined at block 229 to be greater than a threshold 202-1 previously set at block 228, the option of processing is disabled as illustrated at block 230, and the user is informed at block 231 through an appropriate message in the window of browser 16, for example "Your job is too large." If the amount of time required is determined at block 229 not to be greater than threshold 202-1, then the option to process is enabled as illustrated at block 232, and the job executes at block 237.

In a variation of the present embodiment, the user's permission to process is reevaluated dynamically as the user selects differing production job options before and/or after disabling of the processing option as illustrated by flow loops 233 and 234. In another variation, an administrator actively specifies threshold 202-1 at block 228. In a further variation, at optional block 235 the administrator can specify different thresholds, for example 202-1 through 202-N, where N is the number of allowed users, on a user-by-user basis (allowing some users to process more time consuming jobs than other users). In another variation, differing thresholds 202-1 through 202-N can be specified at block 235 for different periods of the day, week, or month. For example, the threshold can be set higher for nights and weekends and lower near the end of a month, when small-job usage may be more frequent. In another variation, both the user and the time period can be used in combination to specify differing thresholds 202-1 through 202-N at block 235, for example to reduce thresholds at month end for all except the accounting department. In another variation, if the user is excluded at block 230 from processing to production device 201, an optional web-based link 206 to an alternative production device, for example production device 203, as illustrated in FIG. 2, is provided as illustrated at block 236.

As an example, a 300 page job would not normally be allowed during the middle of a workday, and so would not have the option to process during those hours. Processing would be a disabled option for such a job, and would result in a no-process message for a three page job with 100 copies of each page or for a single copy of a 300 page document. In one variation, the same 300 page job can be permitted in the evening or during a weekend after normal working hours, when threshold 202-1, . . . , 202-N can be for example 1,000 pages or even a substantially limitless number of pages.

A further approach to relieving competition for shared production devices provides a system and method for interrupting the processing of multiple copies of a user's job with other jobs. The web-based imaging device interface provides a setting that indicates whether subsequent copies of a job can be interrupted. A web-based status display informs the user if user's job is temporarily deferred for a second user's job. The deferred job can either be stored on the production device hard disk 210 (see FIG. 2A) or accessed through personal imaging repository 30. When processing of the deferred job resumes, subsequent output copies can be stored in the original output bin. This allows a user to process multiple output copies without dominating the production device.

FIG. 3 is a flow diagram depicting the operation of a web-based system for gracefully interrupting the processing of multiple copies of a user's job, in accordance with embodiments of the present invention. As indicated in FIG. 3, a first user having a job 1 browses to the web service representing a production device, for example destination service 34 representing production device 201 as illustrated in FIG. 2A, and performs the operations depicted in block 221 through block 227 of FIG. 2B. Following analysis at block 227 in FIG. 2B of the number of pages and estimated processing time and resources for Job 1, first user at block 301 is informed whether production device 201 is busy or available (i.e., not busy). If not busy, then in some embodiments operation proceeds to block 303, where it is determined whether or not the resources (e.g., number of pages, estimated processing time, number and type of finishing options, and the like) required to process Job 1 exceed a first threshold (Threshold 1) previously set at block 302. If so, then Job 1 becomes interruptible by default, as depicted at block 311.

If the required time and resources for Job 1 do not exceed Threshold 1, then in some embodiments operation proceeds to block 305, where it is determined whether or not the required time and resources of Job 1 exceed a second threshold (Threshold 2) previously set at block 304. If the time and resources for Job 1 do not exceed Threshold 2, then Job 1 is processed without interruption or delay as illustrated at block 307, since it was established at block 301 that production device 201 is not busy. If the required time and resources for Job 1 exceed Threshold 2 but do not exceed Threshold 1 (Threshold 2 generally being smaller than Threshold 1), then first user is presented with an option at block 306 whether or not to allow interruption of Job 1. If first user chooses not to allow interruption, then Job 1 processes without interruption or delay at block 307. If first user chooses to allow interruption of Job 1, then Job 1 becomes interruptible, as illustrated at block 311. Operation of Job 1 then proceeds without further delay to block 308, where Job 1 processing allowing interrupts begins at production device 201. In some embodiments, destination service 34 displays at first user's browser 16 a report of processing status of Job 1 including interrupt status, as illustrated at block 309. In some embodiments, if desired, the cycle could be arranged such that Job 1 is unconditionally interruptible or is interruptible if particular criteria are met.

Although FIG. 3 depicts three distinct ranges of estimated time and resources of Job 1 relative to Threshold 1 and Threshold 2, other variations of the embodiments can offer differing behavior. For example, for all values of estimated time and resources, Job 1 can be unconditionally interruptible or non-interruptible, or conditionally interruptible dependent on the choice of user 1, as depicted at block 306. These three ranges provide for allowing interruption at the option of first user only if Job 1 is sufficiently large (exceeding Threshold 2). However, if Job 1 also exceeds Threshold 1, then by default first user must allow interruptions, insuring that first user cannot monopolize production device 201 with a very large processing job. In some variations, if desired, exceptions can be made to prevent interruption of "special users," (for example the `boss`) and/or when certain parameters can be set. Alternatively, there may be only two ranges, unconditionally interruptible and non-interruptible respectively relative to a single threshold; or any two ranges, either of which can be interruptible, non-interruptible, or conditionally interruptible. Thresholds can be set arbitrarily or can be based on estimated or experienced processing results. In some embodiments, thresholds can vary depending on hours of the day or days of the week or month. Thresholds can be set differently for different users, thereby allowing some users higher priority than other users to interrupt a currently processing job. In some embodiments, thresholds such as Thresholds 1 3 can be determined statistically or adaptively.

To illustrate interruptible processing in an embodiment of the present invention, a second user having a processing Job 2 browses to the web service representing a production device, for example destination service 34 representing production device 201 as illustrated in FIG. 2A, and performs the operations depicted in block 221 through block 227 of FIG. 2B. Following analysis at block 227 of the number of pages and estimated processing time and resources of Job 2, second user at block 301 is informed that production device 201 is busy (currently processing Job 1). Alternatively, while Job 1 is processing, a second user can walk up to production device 201 and locally request a processing Job 2 as depicted at block 310, for example a convenience quick one-page copy job. Although for simplicity only two processing jobs are described herein, multiple processing jobs can compete for the same processing time and resources within the scope defined by embodiments of the present invention.

Illustratively, if second user finds Job 1 interruptible at block 312 and if the page count and other resources for Job 2 do not exceed at block 314 a Threshold 3 previously set at block 313, then second user is allowed to select an "interrupt request" button at block 315, whereupon interruption of current Job 1 begins at block 318. When production device 201 began processing Job 1 at block 308, first user at block 309 viewed a display at first user's browser 16 reporting the status of Job 1, for example, if page 1 of 100 and/or copy 1 of 100 is currently processing. This is done in a web based fashion. When interruption of current Job 1 begins at block 318, the status display of production device 201 is updated at block 320 to indicate the status of interrupted Job 1, for example "job deferred; this production device is being used." In some implementations the display can include a graphic that, for example, looks like an employee standing in front of the production device making a copy. In this way, first user is informed that his/her job is on hold, interrupted but not canceled. Second user proceeds to process Job 2 at block 321. After second user has completed making the requested photocopies, for example, first user's Job 1 resumes processing at block 322 and the status display is updated accordingly.

During the course of processing interruptible Job 1, various rules can be invoked as illustrated at block 323 to control and limit the number and nature of interrupts. For simplicity only one level of interrupt has been described herein, for example, a second interrupt is not allowed to interrupt a first interrupt. However, more complex interrupt rules can be invoked within the context of embodiments of the present invention.

At block 324 the separation of outputs of Job 1 and Job 2 is depicted. If second user has walked up to production device 201 as a local copier, then second user can hand carry Job 2 output, and Job 1 output is routed into a bin. If Job 1 and Job 2 are both web-based processing jobs, then their outputs can be separated, for example by offsetting from one another, by routing into different output bins, or by using separator sheets (ideally with a different color from the output). A variation of the embodiments limits interruption to copy boundaries, for example inserting a delay at block 318 until the current copy of Job 1 output clears before interrupting with Job 2. This provides a relatively clean implementation, which facilitates separation of the outputs of Jobs 1 and 2.

Returning to blocks 312 315 of FIG. 3, illustratively, if second user finds Job 1 non-interruptible at block 312 or if the page count and other resources for Job 2 exceed Threshold 3 at block 314 or if second user declines to select the "interrupt request" button at block 315, then second user can select an "I'll wait" button at block 316. If second user chooses to wait, then Job 2 waits for completion of current Job 1 and processes directly after Job 1, as illustrated at block 317. If second user declines to wait at block 316, then further consideration of processing of Job 2 by production device 201 is terminated.

Another approach to relieving competition for a production device provides a link that allows a user to make a reservation for processing a job, as an alternative to dominating a production device during normal daytime working hours. A user collects desired image information in user's personal imaging repository, browses to a destination service representing a production device (e.g., printer), configures desired options, and activates the destination service on a reservation basis, supplying time when processing is to begin. Resources necessary to complete the job are reserved, such that other processing is not allowed to consume these resources. In the case of a printer, for example, toner low is reported as if the reserved resources had already been consumed. Also in the case of a printer, the job would be retained, for example, on hard disk 210 of production device 201 as illustrated in FIG. 2A.

FIG. 4 is a flow diagram depicting the operation of a web-based system providing the ability to make a reservation for deferred processing of a user's job, in accordance with embodiments of the present invention. As indicated in FIG. 4, a user having a processing job browses to the web service representing a production device, for example destination service 34 representing production device 201 as illustrated in FIG. 2A, and performs the operations depicted in block 221 through block 227 of FIG. 2B. Following analysis in some implementations at block 227 of the number of pages and estimated processing time and resources for the job, user at block 401 is provided an option of making a reservation for deferred processing of the job, for example on production device 201 represented by destination service 34. If the user selects the reservation option, then the user requests a job start time at block 402a.

If a conflict exists for the requested start time (e.g., production device 201 already reserved, start time administratively "blacked out" to reservations or otherwise not available for the requested start time), then in some implementations operation returns the user from block 402b, as illustrated by flow loop 420, back to block 402a, where user is prompted to request a different start time. When the user has requested a start time that provides adequate processing time for estimated completion of the user's job without conflicts, then a message communicating this fact is displayed to the user as illustrated at block 403a, and the user typically has the opportunity to confirm or decline the reservation at block 403b. If the user declines the reservation, operation proceeds through a normal processing path to block 408, in the same fashion as if the user had not selected the reservation option at block 401. In some implementations other options can be provided to the user, as illustrated at block 410, and the job is generally either processed as illustrated at block 409 or the dialogue between the user and destination service 34 is eventually terminated.

In some implementations, destination service 34 analyzes at block 227 the estimated processing time and resources for the user's reserved job. Destination service 34, by virtue of web based imaging, knows how many pages are required and it knows the settings that the user has chosen, for example the number of copies, duplex, and the like. Destination service 34 knows the nature and complexity of the imaging information, e.g., composition, retrieved by destination service 34 at block 224 of FIG. 2B. This enables destination service 34 to estimate at block 227 the required resources to process the user's job, for example paper and toner for a print job. If the user confirms to process on a deferred reservation basis at block 403b, then user's job is retained, for example on hard disk 210 (see FIG. 2A) and in some implementations the resources in addition to the time for processing the user's deferred job are also reserved, as illustrated at block 404. This is advantageous, because the user is allowed to submit a job for example during the day to be processed in the evening, and to have some basic level of assurance that the job will have adequate resources for completion.

In some implementations, when resources are reserved at block 404, destination service 34 periodically or continuously monitors the status of these resources using embedded sensors 209 (see FIG. 2A). This monitoring proceeds from the initial reservation of the resources at block 404 through the waiting period represented at block 406 until the eventual deferred processing of the job, as illustrated at block 407. In some implementations the reserved resources are reported as if they are already consumed. For example, if a user places a reservation that would use 10% of the toner and 30% of the paper that is available on a particular printer, then the reported status of these resources would be reduced by these quantities relative to their actual status. If a second user were to process additional jobs during the day that would start to cut into the portion of the toner and paper that had been reserved, destination service 34 in response to sensors 209 would signal a "resource low" at block 405a, and the second user would receive warning messages at block 405b that would, for example, look as if the paper were already depleted. Alternatively, at block 405b destination service 34 can issue warnings to users of production device 201 that they are violating a reservation. In some implementations, as illustrated at block 405c, replenishing the depleted resource can remove the "resource low" status and return destination service 34 to the previous monitoring state at block 404.

Broadly stated, the present invention is directed to an improved system and method for printing from a web application. The system and method provide printing from a web application that is independent of the configuration of the operating system. In addition, since the print destinatio


Free Web Sudoku Puzzles.
Solve with your browser.
  8   2 7       3
  6              
    4 6         5
  2 6 1     3    
        5        
    5     9 2 1  
9         6 1    
              4  
1       9 4   7  
What is it?



Add Your Site · Terms Of Service · Privacy Policy


DISCLAIMER
Linkgrinder is a free service that searches the Internet and indexes all files found so that you may search quickly and easily for shared files. These files are created and made available individually by users whose identity we are not aware of and who we have no control over. In essence we function like a search engine tool; these files ARE NOT STORED OR SERVED BY OUR NETWORK. We are not responsible for any materials obtained by using our service. We do not monitor any of the contents of these files. These files may contain viruses, illegal materials, materials inappropriate for minors, offensive files and the like. BY USING OUR SERVICE, YOU ASSUME FULL RESPONSIBILITY FOR DOWNLOADING THESE MATERIALS AND WILL INDEMNIFY US FOR ANY DAMAGES THAT MAY BE INCURRED.

For More Specific Information VIEW OUR TERMS OF SERVICE.

Thank you and Enjoy!