Optimized Meeting Scheduling with Exchange 2010 and Exchange Web Services
There is a new EWS sample made available by Microsoft recently: Optimized Meeting Scheduling with Exchange 2010 and Exchange Web Services.
This code sample demonstrates how to use Microsoft Exchange Web Services (EWS) Managed API to implement an application that automates the booking of a meeting based on attendees and the conference room availability.
With Exchange Server 2007, Microsoft introduced a brand new, unified API based on standards such as SOAP, XML, and HTTP. This API, known as Exchange Web Services, has since evolved in Exchange 2007 SP1, SP2, and now Exchange 2010 to become the most powerful and feature rich API ever available for developing applications against Exchange. In fact, in Exchange 2010 Microsoft has removed support for legacy APIs such as WebDAV and CDOEx; EWS is now the only programming interface available to developers.
This code demonstrates how to use Exchange Web Services to completely automate the booking of a meeting, thanks to two key EWS features. The first of these features is the little known, yet very powerful capacity of the GetUserAvailability EWS method to suggest meeting times based on the availability of attendees. The second, introduced in Exchange 2010, is comprised of two EWS methods (GetRoomLists and GetRooms) that allow for the retrieval of room lists, which are special Active Directory distribution lists that contain Active Directory room resources. Room lists can represent any group of rooms (such as buildings) and the rooms in those room lists.