We are in need of a custom windows 'print to fax' driver to be integrated with our website.
The following functional specification is required:
1. Must install cleanly using a standard 'windows installer' type of interface
2. Must be able to be printed to from any windows program that can print by simply selecting the printer from the list of installed printers
3. Must produce postscript output of the print job and format an https post to a URL we will provide, to include the following POST variables :
username -> the user's username
password -> the user's password
company -> the user's company
faxno -> the fax number to transmit to, formatted as an 11-digit (1+number) string only. The front-end for the driver should validate that an 11-digit string beginning with '1' and no punctuation is provided.
faxfile -> a file upload of the postscript output from the driver
4. At run-time, the user should only need to specify the fax number to fax to. The username, password and company should be configured at install time and a utility should be provided (preferably through the 'properties' of the print driver) for changing these if needed. The username, password and company datashould be stored in the registry.
5. The URL being POSTed to (which we will provide) will return a status to the print driver, formatted as follows:
Extended: [Job Number|Fail Reason]
The front-end should display either 'Your job to was submitted successfully. The job number is ' or 'Your job to could not be submitted because ', depending on the status we return to the driver when the POST happens.
Additionally, the driver should handle the condition that a connection cannot be established to the URL and should inform the user of that fact if it happens.
6. Must be compatible with Windows 95, 98, 2000 and XP.
7. Must include all components to install itself. No reliance on the user to have Windows CD's handy or whatever.
8. We will provide the desired name for the printer to be installed (user will not select at install time) as well as any verbiage we want on the screens when the user is printing.
1. Both source and executable forms of all individual files required to install the print driver on all required supported platforms (not the installer package, see #2).
2. An MSI or EXE format single-file installer package for distribution.
3. Source code must be thoroughly documented and instructions for recompiling if needed must be provided.
This will be 'work made for hire', and we will own all right, title and interest in the final result. A statement of assignment, including indemnification for any claims of infringement on the basis of our reliance on the developer's expertise, will be required to be signed and faxed to us by the selected developer.
It is acceptable to utilize third-party tools and utilities as part of the overall solution, provided that:
1. The print-driver front-end is separate and distinct (in terms of files) from the tools/utilities it utilizes.
2. Any tools/utilities are used in such a way that they do not create any obligation for us to pay royalties or license fees when distributing, are able to be redistributed by us as part of the package without infringement and do not create an obligation for us to redistribute source code for the print-driver front-end. Any required license statements, source code for tools/utilities that must be provided, etc. must be integrated by the developer as part of the overall effort to build the installation package.
We will need e-mail only support for any bugs. The expectation is that, after the package is delivered, we will be able to get anything corrected which prevents the deliverables from meeting the specification for a period of one year without charge.