New Development Functionality
Applies to: Exchange Server 2007 SP3, Exchange Server 2007 SP2
Topic Last Modified: 2006-06-14
This topic describes the new functionality that is available for developing custom applications and extensions for Microsoft Exchange Server 2007. For more information about Exchange 2007 development functionality, see the Microsoft Exchange Server 2007 Software Development Kit.
Exchange 2007 includes a new set of Web services that enable developers to interact with Exchange mailboxes and contents by using standard HTTP. Exchange Web Services provides access to the authenticated user's mailbox and the items in the mailbox. Applications can remotely access mail messages, handle meeting requests, look up users in the address book, and determine the availability of other users.
Exchange Web Services enables in-house developers and systems integrators to create applications that enhance the Exchange experience, and facilitate the development of custom systems integration solutions.
Microsoft Exchange Server 2003 developers who currently use WebDAV, Collaboration Data Objects for Exchange 2000 Server (CDOEX), and the Exchange OLE DB (ExOLEDB) provider will find Exchange Web Services to be more robust, easier to use, and better able to handle Exchange-specific item types.
Exchange Web Services includes the following Web services:
- Autodiscover Provides configuration information for setting up client applications that connect to mailbox servers.
- Availability Provides free/busy data about a user's mailbox. The free/busy data is also used to identify suggested meeting times and provides client Out of Office (OOF) management functionality.
- Messaging Records Management Enables the assignment of Managed E-Mail folders to mailbox users.
- Notification Notifies the client application of events that are associated with a mailbox. The subscription model can be either push- or pull-based.
- Synchronization Provides a one-way synchronized cached copy of a user's folders and items.
- Exchange Data Service Provides the following features:
Functions to create, update, delete, copy, find, get, and move folders that are associated with a mailbox user, and also the ability to find items that are contained in a folder.
Access to the Exchange data store. A client application can create, update, delete, copy, get, move, and send items by using the Exchange Data Service Web service.
Ambiguous name resolution.
The ability to return the members of distribution list.
Access to attachments in the Exchange store.
- Functions to create, update, delete, copy, find, get, and move folders that are associated with a mailbox user, and also the ability to find items that are contained in a folder.
For more information about Exchange Web Services, see the Microsoft Exchange Server 2007 SDK.
The new Transport APIs in Exchange 2007 enable software developers to create Transport Agents. Transport Agents can be installed and enabled on computers that are running Exchange 2007 that have the Edge Transport or Hub Transport roles installed. Transport Agents have access to e-mail messages and their contents when the messages move through the transport services. For more information about Transport Agents, see the Microsoft Exchange Server 2007 SDK.
The Exchange .NET Framework Extensions provide useful classes and data structures that enable you to access and manipulate the various parts of e-mail messages. The Exchange .NET Framework Extensions includes the following namespaces:
- Microsoft.Exchange.Data.Mime Enables stream-based and DOM-based access to Multipurpose Internet Mail Extensions (MIME) data, including the ability to filter MIME content.
- Microsoft.Exchange.Data.TextConverters Provides classes and data structures that enable custom filtering of e-mail body content and conversion between several different formats, including HTML, RTF, and plain text.
- Microsoft.Exchange.Data.iCalendar and Microsoft.Exchange.Data.Tnef Provide classes and data structures that let you read and write calendar items for appointments, meetings, and events.
- Microsoft.Exchange.Data.Encoders Provides classes and data structures that let you easily convert the encoding of an e-mail message.
For more information about the Exchange .Net Framework Extensions, see the Microsoft Exchange Server 2007 SDK.
The Exchange Management Shell is a command-line management interface that can be used for server administration in an Exchange 2007 organization. The Exchange Management Shell provides interfaces and objects that are used to develop applications that manage Exchange. For more information about the Exchange Management Shell, see the Microsoft Exchange Server 2007 SDK.