Create a windows service application, also capable of being run as a console mode for debugging.
The application will periodically connect to a single mailbox on a Microsoft Exchange Server. The mailbox has been configured to receive a copy of all inbound and outbound mail. Each mail message waiting in the specified inbox will be process by the application.
Processing involves scanning the message for specific headers, collecting sender and recipient information and then sending this information to another application through a WCF call.
The application will also listen for TCP socket connections from third party client software. The connection will implement a protocol (to be defined by the developer) that will allow the following transaction to take place:
Client requests a mail message
Application validates this request by making a WCF call to a separate application and if validated sends the mail message (without attachments)
Client can optionally request the download of each attachment from the message
Additionally the developer will be required to provide a C# .Net DLL assembly which provides a convenient set of functions to support the client end of this protocol.
A full specification of the application is available to shortlisted bidders.