The present invention is directed to the field of monitoring an controlling the operational performance of computer output peripheral devices, e.g. printers.
In many offices and other commercial establishments, it is common to have more than one device connected to a network that is capable of printing. Furthermore, multiple users often have the capability to print to any of a group of multiple printing devices on a network. In a large enterprise organization, a plurality of printers often reside on the network, many of which have different manufacturers and makes. Even those printers having the same manufacturer are often created as part of different generations of product lines.
Networked printers are generally bi-directional in nature, meaning that they not only receive print jobs for printing, but they also respond with a communication that can be used to monitor printer status. Each printer product line generally includes a document monitoring utility for monitoring printer status and translating notifications and communications received from corresponding printers. The notifications received from printers are assigned a code, or an object identifier (“OID”) corresponding to the status of the printer. Such status notifications include messages describing events such as “Printing,” “Paper Jam,” “Out of Toner,” and any other type of status or notification, depending on the particular features available on a printer.
Document and printer monitoring utilities function to monitor and receive OIDs and display for a user the message corresponding to a particular OID. Unfortunately, different manufactures and products, even different lines of printers from the same manufacturer, use different OIDs to describe the same event. Furthermore, in some instances, different lines of printers use the same OID to describe completely different events. Therefore, document and printer monitoring software is product line specific in that it functions properly only when used solely with the line of printers for which it particularly corresponds. Thus, a single document monitoring utility cannot be used to correctly monitor different printer product lines.
Consequently, network administrators must use a plurality of printer monitoring utilities to track printer activity throughout a network. It would be preferable if one printer monitoring utility had the capability to simultaneously monitor the status of printers from different product lines.
In view of the difficulties and drawbacks encountered in previous-type systems, there is therefore a need for a method of monitoring printer status that is capable of simultaneously monitoring of different printer product lines.
There is also a need for a method of translating various OID notification coding schemes into a standardized OID code.
These needs and others are satisfied by the method of the present invention including the steps of submitting a print job to a network printer and identifying a specific printer controller governing the print job. The method further includes loading a set of identifiers respective to a specific printer controller and selecting from the set of identifiers a respective identifier corresponding to the type of print job employed on the specific printer controller. The selected identifier is used to issue the predetermined type of notification from the controller.
As will be realized, the invention is capable of other and different embodiments and its several details are capable of modifications in various respects, all without departing from the invention. Accordingly, the drawing and description are to be regarded as illustrative and not restrictive.
In a preferred embodiment, a computer and multiple peripheral devices are connected to a network. The network suitably runs on any network operating system (“NOS”) or mainframe system and suitably supports a myriad of software packages. Preferably the present invention is employed in a system where a user of personal computer (“PC”) issues a print command. The hard copy is printed from a printer, which is suitably a multifunction peripheral (“MFP”) device such as a combined copier/printer/fax device. In the preferred embodiment, the user selects the “print” command from a menu of command options, such as those used with a graphical user interface operating system. However, it should be understood that the present invention is not limited in this manner and could easily be adapted to systems employing a print function or the like, all without departing from the present invention.
Turning now to
Flow progresses to process 12 wherein the selected printer after having received the print job requests generates an OID. In a presently preferred embodiment, a printer controller generates an OID corresponding to the current printer status. After the OID is generated, it is transmitted to a printer monitoring utility in process 14. The printer monitoring utility is preferably a network utility residing on a server, but is also suitably a utility stored locally on the PC at which the user generated the print command. Upon receipt of the OID, the monitoring utility queries the printer controller to identify itself in process 16. The printer controller replies with an identity descriptor, which is suitably a header or the like, and in block 18, the monitoring utility receives this controller identity descriptor.
In process 20, after receiving the controller identity descriptor, the monitoring utility determines a method for translating the received OID based on the received identity descriptor. For example, the monitoring utility suitably searches through a database to determine the printer manufacturer, model number, family group or subgroup, or any other type of information relative to the identified printer, so as to obtain generalized information about the printer functionality. Further, the monitoring utility suitably searches for an appropriate translation mapping table for correlating the specific received OID with a status notification, such as “Paper Jam”.
In process 22, the monitoring utility uses this information to monitor the printer status, so as to present status messages in a consistent, standardized format that is suitably viewed by a user or system administrator. In this manner, the monitoring utility suitably provides universal translation capability between a variety of different printer types, each having its own OID translation table. In block 24, the process is stopped.
An exemplary network employing the present invention is shown in
The communication protocol between client and peripheral devices 106 is Simple Network Management Protocol (“SNMP”), which is capable of managing nodes on an IP network. It should be understood that SNMP is not limited to TCP/IP. SNMP is suitably used to manage and monitor all sorts of equipment including computers, routers, wiring hubs, toasters, MFPs and jukeboxes.
Any number of client machines 100 receive network software and messages from at least one server 102. All network devices are connected to the network using a network backbone 104. The network suitably includes any number N of network peripheral devices 106 including output devices. Preferably, devices 106 are printers or MFP devices. Each device 106 comprises a network interface 108, a controller 110 and a memory 112 for storage of software and various data, integral with the device.
In a presently preferred embodiment of the invention, a user invokes a “print” command. A printer driver activates a printer dialog box that pops up to enable the user to select various print options. An “OK” button on the dialog is clicked to perform a submission step for submitting a print job to a network printer. A notifying step is performed for notifying the monitoring utility of a unique job submission identification. An identifying step follows in which the monitoring utility queries the controllers to identify which specific printer controller type is used for governing the print job.
In this embodiment, the printer driver maintains a set of mapping tables that govern the operation of the identified device. These mapping tables can retain a respective set of Object Identifiers (OIDs) that correspond to each status and other types of notification messages that are issued from the particular model and version of printer controller to which the print job is sent. For example, the mapping tables may be one of two different types of mapping tables, e.g. including codes for the printer controller of an older model printer, or from a newer model. The printer controller replies to the monitoring utility's query in a reply step, where the type of mapping table is identified, e.g. as corresponding to the older or newer model printer, where similar OIDs might be used to issue different types of notification messages.
After query and reply, a loading step is performed where the set of mapping tables is loaded respective to a specific printer controller, e.g. where either an older or newer print controller model is identified. Once the loading step is performed, a selecting step is performed for selecting from the set of mapping tables a respective object identifier corresponding to a predetermined type of notification to be issued by the specific printer controller. These selected OIDs are utilized in a using step for using the selected object identifier to issue the predetermined type of notification from the controller. The notification can be displayed to the user in a displaying step, where the notification can be displayed using a pop-up dialog box, or other type of message notification such as could be employed, without departing from the present invention.
In the preferred embodiment, the mapping tables are message dynamic link libraries that are loaded and unloaded depending on the specific printer controller. Each dynamic link library is generated with its own header file for the respective object identifier. As presently disclosed, the present invention provides a method of translating the OIDs in each type of mapping table into a universal code, so as to overcome problems encountered in previous enterprise networks that may use more than one model version of a peripheral component. In so doing, the present invention provides a degree of flexibility and efficiency not obtainable with previous type systems.
As described hereinabove, the present invention solves many problems associated with previous type devices. However, it will be appreciated that various changes in the details, materials and arrangements of parts which have been herein described and illustrated in order to explain the nature of the invention may be made by those skilled in the area within the principle and scope of the invention will be expressed in the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5040031 | Hayashi | Aug 1991 | A |
5386271 | Maekawa et al. | Jan 1995 | A |
5465364 | Lathrop et al. | Nov 1995 | A |
5504568 | Saraswat et al. | Apr 1996 | A |
5537550 | Russell et al. | Jul 1996 | A |
5537626 | Kraslavsky et al. | Jul 1996 | A |
5612160 | Inoue et al. | Mar 1997 | A |
5619649 | Kovnat et al. | Apr 1997 | A |
5659795 | Duvall et al. | Aug 1997 | A |
5694618 | Hibino | Dec 1997 | A |
5761396 | Austin et al. | Jun 1998 | A |
5805924 | Stoevhase | Sep 1998 | A |
5852744 | Agatone et al. | Dec 1998 | A |
5859711 | Barry et al. | Jan 1999 | A |
5867633 | Taylor, III et al. | Feb 1999 | A |
5873659 | Edwards et al. | Feb 1999 | A |
5903801 | Nakamura | May 1999 | A |
5943503 | Kai | Aug 1999 | A |
5946458 | Austin et al. | Aug 1999 | A |
5960167 | Roberts et al. | Sep 1999 | A |
5995721 | Rourke et al. | Nov 1999 | A |
6006281 | Edmunds | Dec 1999 | A |
6020973 | Levine et al. | Feb 2000 | A |
6043898 | Jacobs | Mar 2000 | A |
6073197 | Stewart | Jun 2000 | A |
6076120 | Hatayama | Jun 2000 | A |
6078406 | Nickerson | Jun 2000 | A |
6128673 | Aronson et al. | Oct 2000 | A |
6141701 | Whitney | Oct 2000 | A |
6172761 | Ohtani | Jan 2001 | B1 |
6198542 | Tabata | Mar 2001 | B1 |
6213652 | Suzuki et al. | Apr 2001 | B1 |
6240456 | Teng et al. | May 2001 | B1 |
6266150 | Brossman et al. | Jul 2001 | B1 |
6275869 | Sieffert et al. | Aug 2001 | B1 |
6292267 | Mori et al. | Sep 2001 | B1 |
6310692 | Fan et al. | Oct 2001 | B1 |
6532491 | Lakis et al. | Mar 2003 | B1 |
6574618 | Eylon et al. | Jun 2003 | B2 |
6748471 | Keeney et al. | Jun 2004 | B1 |
6788429 | Clough et al. | Sep 2004 | B1 |
6825941 | Nguyen et al. | Nov 2004 | B1 |
20030048469 | Hanson | Mar 2003 | A1 |
Number | Date | Country | |
---|---|---|---|
20030063310 A1 | Apr 2003 | US |