IP Library Granted Patent US 7,522,299
Granted Patent B2
US 7,522,299 · App. 10/608,410 · Granted Apr 21, 2009

System and method for automatic configuration

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,522,299
App. No.
10/608,410
Granted
Apr 21, 2009
Kind
B2
Abstract

A system and method for automatic configuration upon installation of a network printer are disclosed. The techniques of the invention avoid the burden of manual configuration by users and system administrators. The network printer is associated with printer description files, a driver, a spooler, and a port monitor. The system comprises bi-directional application program interfaces associated with the spooler for allowing the driver to generate a bi-directional request and receive a bi-directional response. The system additionally includes a syntax within the printer description files for representing and associating the bi-directional request and the bi-directional response with a print feature. The system also includes extension files stored in the driver for relating bi-directional values and printer values and a notification infrastructure controlled by the port monitor for providing a bi-directional notification of configuration changes to the driver and selected applications.

Claims (54)

1. A system for automatic configuration upon installation of a network printer, wherein the network printer is associated with printer description files, a driver, a spooler, and a port monitor, the system comprising:

bi-directional application program interfaces associated with the spooler for allowing the driver to generate a request and a response, the bi-directional application program interfaces that seek a list of one or more installable features upon installation of the network printer;

a syntax within the printer description files for representing and associating the request and the response with a print feature, the syntax including one or more extensions to the printer description files;

extension files stored in the driver for relating bi-directional values and printer values, the bi-directional values that enable a client to generate a request and interpret a response;

a notification infrastructure controlled by the port monitor for providing a bi-directional notification of configuration changes to the driver and selected applications; and

a computer storage medium for storing information related to automatic configuration upon installation of the network printer,

wherein the bi-directional application program interfaces perform an auto-configuration of the system upon installation of the network printer, the auto-configuration including configuration of the one or more installable features and the auto-configuration performed independent of input from one or more users at one or more computers.

2. The system of claim 1 , wherein the notification infrastructure includes a drive printer event mechanism for informing the driver of a configuration change.

3. The system of claim 1 , wherein the notification infrastructure includes a find next printer change notification for allowing an application to monitor and receive configuration changes automatically.

4. The system of claim 1 , wherein the syntax additionally comprises a plurality of keywords including a response type keyword for designating a bi-directional response type and a response data keyword for mapping between features of the network printer.

5. The system of claim 1 , wherein the syntax provides tools for providing updates at a global level, at an option level, and at a feature level.

6. The system of claim 1 , further comprising independent hardware vendor extensions for enumerating specific features provided by a manufacturer.

7. The system of claim 1 , wherein the bi-directional application program interfaces provide tools for supporting a get action, a set action, and an enumerate action.

8. The system of claim 1 , wherein port monitor includes a mechanism for retrieving data from a network printer database and for accessing the extension files to transform the data.

9. The system of claim 8 , wherein the bi-directional application program interfaces provide a mechanism for returning the data retrieved by the port monitor.

10. A system for facilitating client retrieval of bi-directional information upon installation of a network device, the system comprising:

a set of bi-directional constructs within a printer description file, the bi-directional constructs seek a list of one or more installable features upon installation of the network device;

a port monitor for receiving the bi-directional constructs, for retrieving data from the network device in accordance with the bi-directional constructs, transforming the data into an appropriate format, creating a channel, and sending the transformed data;

a spooler including a mechanism for receiving installation notifications over the created channel from the port monitor and routing the installation notifications to selected applications; and

a computer storage medium for storing information related to automatic configuration upon installation of a network printer,

wherein the bi-directional constructs perform an auto-configuration of the system upon installation of the network printer, the auto-configuration including configuration of the one or more installable features and the auto-configuration performed independent of input from of one or more users at one or more client computers,

wherein the auto-configuration provides for automatically updating the system upon installation of the network printer independent of user intervention:

wherein the bi-directional constructs monitor and recognize an acquiring of additional printer features, and

wherein the additional printer features are automatically updated when recognized.

11. The system of claim 10 , wherein spooler comprises a drive printer event mechanism for informing a driver of a configuration change.

12. The system of claim 10 , wherein the spooler comprises a find next printer change notification for allowing an application to monitor and receive configuration changes automatically.

13. The system of claim 10 , wherein the set of bi-directional constructs includes a bi-directional query construct and a bi-directional response construct.

14. The system of claim 13 , wherein the printer description file comprises a plurality of keywords including a response type keyword for designating a bi-directional response type and a response data keyword for mapping between features of the network printer.

15. The system of claim 14 , wherein the bi-directional constructs and the keywords form a syntax providing tools for making automatic updates at a global level, at an option level, and at a feature level.

16. The system of claim 10 , further comprising independent hardware vendor extensions for enumerating specific features provided by a manufacturer.

17. The system of claim 10 , further comprising bi-directional application program interfaces within the spooler for allowing transmittal of a bi-directional request and a bidirectional response.

18. The system of claim 17 , wherein the bi-directional application program interfaces provide tools for supporting a get action, a set action, and an enumerate action.

19. The system of claim 10 , wherein the port monitor includes a mechanism for retrieving data from a network printer database and for accessing extension files within a driver to transform the received data.

20. The system of claim 19 , wherein the bi-directional application program interfaces provide a mechanism for returning the data retrieved by the port monitor.

21. One or more computer-readable storage media having computer useable instructions embodied thereon for performing a method for automatically configuring a system upon installation of a network printer within the system, wherein the system includes printer description files, a driver, a spooler, and a port monitor, the method comprising:

getting, upon installation of the network printer, a list of installable features and corresponding bi-directional requests from the printer description files;

calling bi-directional application program interfaces from the spooler to query for a current configuration of the installable features;

mapping bi-directional schema to a printer-specific protocol; generating and routing a bi-directional notification;

mapping bi-directional responses to a feature from the printer description file; and updating an application with a current configuration, wherein updating the application with the current configuration includes performing an auto-configuration of the system upon installation of the network printer, the auto-configuration including configuration of the installable features: wherein the auto-configuration is performed independent of input from one or more users at one or more client computers.

22. The media of claim 21 , wherein routing a bi-directional notification comprises routing a drive printer event notification to the driver to inform the driver of a configuration change.

23. The media of claim 21 , wherein routing a bi-directional notification comprises routing a find next printer change notification to an application to allow the application to monitor and receive configuration changes automatically.

24. The media of claim 21 , further comprising implementing a plurality of keywords including a response type keyword for designating a bi-directional response type and a response data keyword for mapping between features of the network printer.

25. The media of claim 21 , further comprising providing automatic configuration updates at a global level, at an option level, and at a feature level.

26. The media of claim 21 , further comprising implementing independent hardware vendor extensions for enumerating specific features provided by a manufacturer.

27. The media of claim 21 , further comprising implementing the bidirectional application program interfaces to provide tools for supporting a get action, a set action, and an enumerate action.

28. The media of claim 21 , further comprising using the port monitor for retrieving data from a network printer database and accessing extension files from the printer description files in order to transform the data.

29. The media of claim 28 , further comprising using the bi-directional application program interfaces for returning the data retrieved by the port monitor.

30. One or more computer-readable storage media having computer useable instructions embodied thereon for performing a method for providing extensibility for a port monitor in order to enable vendors to define new mappings using existing public bi-directional schema and extensions to existing schema, the method comprising:

permitting, upon installation of a network printer, the use of an extension file describing a mapping between bi-directional values and device-specific objects, the extension file seeks a current configuration of the network printer; and

allowing implementation of the extension file to facilitate a port monitor response to a bidirectional request,

wherein the extension file provides for auto-configuration of a system, the auto-configuration including configuration of the system to recognize the device-specific objects and current configuration of the network printer,

wherein the auto-configuration is performed independent of input from of one or more users at one or more client computers.

31. The media of claim 30 , wherein the extension file is an XML extension file.

32. The media of claim 30 , wherein the extension file comprises independent hardware vendor extensions of standard bi-directional schema.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2004
From: NGUYEN, AMANDA GIANG-TIEN; PAVICEVIC, IVAN; FENELON, MICHAEL P.
To: MICROSOFT CORPORATION
Reel/Frame 015011/0947 →