We need a simplified version of CCTray.
Full source code is available here: <[login to view URL]>
The purpose is not to create a replacement of it, but create a "light" version that will sends statuses to another system.
Basically, the application will holds multiple CruiseControl server, and the "global" status will be sent to another application when it changes.
We also plan to support our other continuous integration server as well, such as TeamCity, so the code has to be extensible.
The configuration screen will consist of a top command bar, with New, Modify and Delete button, a creation/edition screen (to specify server information) and a list view with server's name & icon (different icon per status). The configuration & servers info will be stored in an external XML file.
The process will then queries all the servers at a regular basis, just like CCTray, and on global status change, the application will sends the new status to a webservice (provided). The application will runs as a service or runs at windows startup. It will be located in the tray, just like CCTray (with Show on right click).
The application has to be fully tested with unit tests (at least 85% code coverage), has to be heavily commented and must respect the following coding guidelines: <[login to view URL]>