We're in need of a Windows (XP or higher) service which will collect information from printers connected directly to a computer via USB / parallel / Bluetooth, and provide that information via an SNMP agent to a SNMP management application running on the network.
Please ensure that you are comfortable with the following requirements or can provide reasonable alternatives:
1) The service should be able to monitor multiple printers connected directly via USB / parallel / Bluetooth to a single computer.
2) The service should ignore network devices as well as virtual printers such as PDF creators or fax systems.
3) The service should use WMI to retrieve basic information regarding printers.
4) In the case of printers which support PML / PJL the service must be able to query the printers for specific data and receive and parse the response from the printer.
5) For devices which do not support PML / PJL it will be necessary to maintain and update a running page count total as documents are printed.
6) Once the data for all printers has been collected and organized it should be added to a private MIB table.
6a) Computers which are using the MS SNMP agent library should have the private MIB added to the existing MIB tables.
6b) Computers which are not using the MS SNMP agent will use an internal SNMP agent built into the service.
7) Management and configuration of the service will be handled using a MS Management Console snap in.
8) The service should be able to download and install simple updates to itself without end user intervention.
9) Development should be in C# or VB.NET and not require any third party libraries, controls, or "plug ins" other than those normally provided with Windows XP and up.
This will be a commercially redistributed program, and all ownership and rights will be transferred to us upon completion of the project and payment of the agreed upon price.
The completed project should include:
1) All source code including detailed internal commenting and any additional documentation required for our in house programmers to be able to take over supporting and updating the application. The source code should be ready to compile.
2) All executables and other files necessary to run the software including the installation file and MMC snap in.
3) If necessary, a basic outline from which we can develop final user documentation.
The program itself should use a methods such as WMI and PJL/PCL/PML to extract as much of the following information as possible from USB connected printers (we understand that not all devices will return all of the desired information):
Total Pages Printed
Total Mono Pages Printed
Total Color Pages Printed
Black Ink/Toner Remaining
Cyan Ink/Toner Remaining
Magenta Ink/Toner Remaining
Yellow Ink/Toner Remaining
The resulting information, along with host information such as the MAC address and name of the computer to which the printer is connected, will be added to a private MIB table which can be accessed via the MS SNMP library. An option to use an internal SNMP agent rather than the MS agent will also be necessary.
The time frame for this project is 30 days from the date of acceptance.
Regular communication between our project manager and the developer will be vital. Spending several days trying to get a reply to an email will not be acceptable and may result in cancelation of the project. Specific milestones will be set and will have to be met.
Please feel free to contact us via PM with any questions. We can provide a more detailed design document to interested bidders.