We need a program that periodically serializes Microsoft Exchange and Outlook Calendar data to XML, this XML output will be used to provide our clients a method of automated content provision for our own multimedia software products.? Multiple calendars need to be exported concurrently, as do different versions of Microsft Exchange and Outlook.
The program should be able to be run as a service on a machine in the same network as the exchange server(s).? A windows interface is required to allow the user to change options to configure aspects of the systems use.
We need a program that periodically serializes Microsoft Exchange and Outlook Calendar data to XML, this XML output will be used to provide our clients a method of automated content provision for our own multimedia software products.? Multiple calendars need to be exported concurrently.
Program that periodically collects and exports the calendar data from mailboxes or calendar public folders, into XML on the hard drive.
The program should have configurability options that allow the user to:?
1. Select 1 or more calendar items to be serialized, from 1 or more locations (Exchange, outlook). Will need to also have options to point at Exchange servers to get list of mailboxes \ calendars.
2. Change the frequency of XML exports (between 1 and 60 minutes).
3. Change the location that the XML is exported to (Local drive \ network drive).
4. Prompt for usernames and passwords for network \ mailbox \ exchange access and save (encrypted) where necessary for the above actions so they do not need to be constantly re-entered.
5. The “window?? of the calendar events that are included in the exported XML, this should take the form of 2 variables that specify the number of hours before and after the “time of export??, all calendar events that fall within or bisect the window will be included in the out put.? E.g. a setting of 1:72 would include all calendar events with any part of the event (including all day events) that fall within 1 hour before the export time and 72 hours after the export time.?
The service should be able to extract and export XML from the following locations.
1. Calendar items of Outlook 2000, 2003 and 2007 mailboxes (no exchange server)
2. Calendar items of Exchange 5.5, 2003 and 2007 mailboxes.
3. Calendar items of Exchange 5.5, 2003 and 2007 public folders.
The program should allow a mixture of the above at the same time (presuming the computer running the program has sufficient access).
In the case of exchange server options above, the program should not have to be installed on the exchange server itself, just another computer with network access to the exchange server.
In the case of accessing Outlook calendar files, it is preferable that Outlook does not have to be open, although obviously it would have to be installed.
**Additional Notes, requirements**?
1. The program should be able to run as a background service (when options are not being changed).
2. The program needs to be able to run on windows XP Professional, Windows 2000 Professional, Windows 2000 Server, Windows 2003 Server and Windows Vista.
3. The output XML must conform to a standard XML specification, although the actual DOM is left to the developer.
4. All information from each calendar event must be serialized (apart from any images \ attachments etc which are not required)
5. The coding language is left to developer choice, but full commented and documented source code must be supplied.
6. It would be preferable for all selected calendars to be exported to the same XML document, therefore some element would be needed to identify which calendar any listed event in the XML output came from.
7. Any errors encountered by the program, e.g. calendar no longer available \ offline, couldn't write XML etc should be logged to another text based file.
On a final note, this is something that we could do in house, but simply don't have the time for at the moment.? Any bids of more than $600 will make it more feasible to do in house.