The project brief was to allow the Solcase case management system to send and receive faxes in an automated way from Solcase's custom scripting language.
Findings
We started with a short consultancy piece in which we surveyed the market for both fax server software and internet fax services. We looked at a Total Cost of Ownership model which included costs for installation, configuration, support, power, rack-space etc, and also at the ease of integration. Internet fax provider Interfax (
www.interfax.net) was the clear winner and we were instructed to start on the integration work.
We developed a novel way for the Solcase (which has no native XML processing capability) to create and modify arbitrary XML documents on the SQL Server 2005 database using the new XQuery XML DML. XML fax requests are enroled in our workflow database and picked up by a C# windows service built with Visual Studio 2008. First it connects back to the Progress database to resolve the locations of the documents to be faxed, then it manages the connection to the Interfax webservice over the internet. Completed fax send requests continue in the workflow and status information is returned back to Solcase and attached to the history of the originating case.
We then added a C# windows service which receives faxes from Interfax and routes them into the scanning system (they're just TIFF files, after all). This system can route based on inbound fax number and skip the categorisation step for faxes received on dedicated numbers, saving further valuable time.
The benefits of this system have been to largely eliminate the printing and queuing at the fax machines, to ensure that a clear electronic record of all documents sent or received by fax is kept on each case and that image quality is optimised.