Custom email providers for Microsoft Dynamics CRM 2013
Applies To: Dynamics CRM 2013
An email provider is a pluggable component that is integrated with the Microsoft Dynamics CRM Email Router service. The provider is responsible for specialized email processing and interfacing with an email protocol. The Email Router manages the routing of email to or from the Microsoft Dynamics CRM platform. Other forms of messaging, such as a fax, InfoPath form, out-of-office notification, and more are not supported by the router. The Email Router is supported by on-premises, Internet-facing, hosted, and online versions of Microsoft Dynamics CRM.
The Microsoft Dynamics CRM Email Router includes different email providers, each implementing a particular email protocol. For example, the POP3 email provider examines email messages that are received by a POP3 mailbox and calls into Microsoft Dynamics CRM to create email activities. The SMTP email provider connects to Microsoft Dynamics CRM to download email activities waiting to be sent, composes the email messages, and submits the email messages to an SMTP server.
For each type of email provider, several instances of the provider may be executing at the same time. For example, at a given time, five instances of the POP3 email provider may be running, each processing email messages from one mailbox and delivering email to a different organization.
In addition, the platform supports the integration of custom email providers to the Email Router service to extend or customize the email handling functionality of Microsoft Dynamics CRM. An extensible framework based on the concept of email providers and XML files is provided to develop custom providers. This email provider documentation explains how you can extend the object model to build your own highly specialized email provider.
From a design perspective, each type of email provider should accept configuration parameters. Two examples of configuration parameters are name of the mailbox to connect to and name of the email server to connect to. Some email providers may also have to persist run-time state information. For example, a provider might need persistent values for the time stamp of the last processed message or number of email messages processed to this point. Such state information should not be lost if the Email Router service is restarted.
For more information about writing email providers, refer to the E-mail Providers documentation in the Microsoft Dynamics CRM 4.0 SDK.