I need a program to monitor incoming faxes on our Windows Small Business Server 2003 computer and copy them to a specified folder after properly renaming them. Required features are as follows:
- Code written in VB.Net, running as a service
- Monitor for incoming faxes through SBS 2003's Shared Fax service, live or every 5 seconds
- Never picks up the same fax twice, even if the service is restarted or crashes
- Read the TSID, Caller ID, CSID, and Status fields from the SBS Shared Fax service
- Copy the new faxes to a folder specified in the app's .config file (using the [login to view URL] namespace)
- Rename the files to "YYYY-MM-DD_hh-mm - {CSID} - {TSID}.tif", optionally adding " (incomplete)" at the end if the fax was not completely received.
- Detect for invalid characters (like a slash or colon) in the target filename and remove them before renaming.
- File name examples are:
2007-09-05_07-53 - ACD - [login to view URL]
2007-10-12_14-30 - ACD - Joes [login to view URL]
2007-10-15_16-29 - ACD - BIKE SHOP (incomplete).tif
The program does not need to edit the original TIF file generated by the SBS Fax Service in any way. The location of the saved TIF files can probably be read from the registry, but I do not know where the TSID/CSID/etc information is stored. As the information can be accessed by XP & Vista clients on the network (using the Fax Console in XP, or Windows Fax & Scan in Vista), somehow the information can be accessed via the network, but I don't know how.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
VB.Net
Windows SBS 2003 32-bit