9 Nov 2012 6:19 AM This post got a little long on me so, for your benefit I went ahead and posted a video that covers the same content. If you prefer to listen and watch the video is embedded into this post at the end. When speaking about the E-mail Router, most people commonly think about the actual Microsoft Dynamics CRM component called Microsoft Dynamics CRM E-mail Router. However, the Microsoft Dynamics CRM for Microsoft Office Outlook client (for now will be referenced as the Outlook client), can also function as the E-mail Router for an organization. I have commonly been asked, “Why would I choose the E-mail Router instead of just using the Outlook client?” “What advantages are there to the Outlook client rather than the E-mail Router?” I have had customers install and configure the E-mail Router and not even know why they were installing or configuring it. The intent of this post is to explain why an organization would want to use e-mail routing within their organization. The sole purpose of e-mail routing is to get mail delivered from or created into Microsoft Dynamics CRM (from now on will be referenced as CRM). For instance, let’s say a company, Company ARR (I’m a big fan of pirates), wants to send marketing materials out for a new product that is being launched. They want to be able to track what e-mails were sent and who replied to them. Company ARR can use CRM to accomplish this task. CRM does not have the capability of being an e-mail service. We rely on some other application, such as Microsoft Exchange, to handle the e-mail services. We then need something to handle the communication between the e-mail service and CRM. This is the entire concept of the e-mail router. To be the middle man between these two services. Now we understand, theoretically, the purpose of e-mail routing and the E-mail Router. We will change our focus onto the fun part, trying to make sense of all the available options for e-mail routing. Which options an organization will want to choose will be based on their pre-deployment planning. The following section should help organizations choose the proper deployment, in regards to E-mail Router, for their organization. E-mail Router vs. Outlook Client There are advantages and disadvantages to both of these components. The following lists of advantages and disadvantages can be found in the E-mail Router Scenarios document found here: The Microsoft Dynamics CRM E-mail Router The E-mail Router can handle the incoming and outgoing e-mail requests of CRM. The E-mail Router is an extra component that needs to be installed and configured on a supported environment. You can find the hardware and software requirements of the E-mail Router within the CRM Implementation Guide found here. Locate the following sections within the Planning Guide: Microsoft Dynamics CRM 2011 E-mail Router hardware requirements Microsoft Dynamics CRM 2011 E-mail Router software requirements Let’s now review what the Advantages and Disadvantages are. Advantages · Can be used to connect to Exchange and POP3 mailboxes to track incoming e-mail into Microsoft Dynamics CRM · Can be used in deployments where the Microsoft Dynamics CRM Client for Outlook is not installed · Can be used to monitor individual user mailboxes · Can be used for Queues · Will send outgoing e-mails out as long as the Router service is running Disadvantages · Requires a dedicated computer that is always running · Can be more complex to setup and maintain if used to monitor a large number of user’s mailboxes · Requires a central administrator within the e-mail service that would have full mailbox rights for users within a deployment or users to manually enter in their credentials within their Personal Options within CRM The Forward Mailbox The Forward Mailbox is used solely for incoming e-mails. It does require the Microsoft Dynamics CRM E-mail Router to be installed. In addition, you will need to use either the Microsoft Dynamics CRM Client for Outlook or the E-mail Router to send outgoing e-mails. Let’s look into some of the advantages and disadvantages of the Forward Mailbox. Advantages · Reduces the number of incoming profiles that must be created and managed for organizations that monitor a large number of user’s mailboxes · One central mailbox to monitor · Does not require a central administrator within the e-mail service or users to enter in their credentials within CRM Disadvantages · E-mail provider must have the ability to forward as an attachment. This is required to forward e-mails to a central mailbox that is monitored by the Microsoft Dynamics CRM E-mail Router · A mailbox rule must be deployed to each user to forward e-mails to the central mailbox The Microsoft Dynamics CRM Outlook client The Microsoft Dynamics CRM Outlook client can be used for incoming and outgoing e-mails like the E-mail Router. Advantages · This scenario does not require the Microsoft Dynamics CRM E-mail Router. The Microsoft Dynamics CRM Client for Outlook is able to send e-mail for each user whether the user sends it from within Outlook or within the CRM Web Client, as well as receive and track e-mail in Microsoft Dynamics CRM. · There are no user passwords to maintain for access to Microsoft Dynamics CRM or to the user’s mailboxes. Disadvantages · The Microsoft Dynamics CRM Client for Outlook must be running for e-mails to be sent or tracked in Microsoft Dynamics CRM. If the Microsoft Dynamics CRM Client for Outlook is not running, the e-mails will be queued until Outlook is launched and connects to the Microsoft Dynamics CRM server and to the mail server. · This scenario cannot be used for Queues created in Microsoft Dynamics CRM. · The Microsoft Dynamics CRM Client for Outlook must be installed for all users that is configured with this option. Well this is a great explanation of the Advantages and Disadvantages but what does this all mean? What does it mean to use E-mail Router or Forward Mailbox? What are the fundamental differences between the Outlook client and the E-mail Router? I am going to use a couple of diagrams to try and help illustrate the idea of what the E-mail Router, Forward Mailbox, and Outlook client is doing in regards to E-mail Routing. E-mail Router: Again, it’s important to understand the functionality of the E-mail Router. It is designed to connect an e-mail service to CRM. The E-mail Router can be used for sending e-mails out of CRM as well as handle creating e-mail activities into CRM, based on replies to CRM e-mail activities. We will first look at how the E-mail Router connects CRM to an e-mail service to send Outgoing e-mails. E-mail Router – Outgoing E-mails: The following diagram is to help illustrate how the E-mail Router sends e-mails out of CRM. I will discuss the actual flow in more details below. 1. A user creates an E-mail activity within CRM and clicks on save. The E-mail activity status is now set to Open and the E-mail is in a Draft state. This means that the E-mail activity can be modified. 2. A user ensures that the e-mail is to their liking and clicks on Send. This will change the E-mail activity status to Pending Send and set the E-mail activity to a read only state. 3. The E-mail Router will query CRM, shown in step 1 in the diagram above, to determine if there are any e-mails that need to be sent. The E-mail Router queries CRM based on a couple of conditions. The first is that the CRM e-mail activity needs to have a status of Pending Send. Then the E-mail Router processes outgoing e-mails on a per user basis. This means that CRM is looking for the user’s GUID for the Sender field. By default, the E-mail Router will only retrieve 6 e-mails to send to the e-mail service at a time. 4. The E-mail Router will try and establish a connection with the E-mail server. Once a connection has been established, it will take the list of e-mails it retrieved in step 1 and send them to the mail server to be delivered. This is shown in step 2 in the diagram above. In some situations, such as later versions of Exchange, the e-mail server must be configured to allow e-mail to be sent from an “external” source. External merely suggests that the e-mail send request was not done by the e-mail service. 5. The server will then accept or reject the request being made from the E-mail Router. If the e-mail server accepts the e-mails from the E-mail Router, the e-mail service will send a reply to the E-mail Router that it is accepting the E-mails. Once the E-mail Router receives this notice, it will change the status of the e-mail activity within CRM from Pending Send to Sent. If the e-mail server rejects the e-mail, the e-mail activity will go back into a Pending Send status and a retry will be done at a later time. 6. Once the e-mail service has accepted the e-mail. It is up to the e-mail service to get it from the server to the recipient. This is shown in step 3 in the diagram above. This is a fairly simple process and concept. The E-mail Router queries CRM for e-mails that are pending send, packages those e-mails up, and sends it off to the e-mail server. Let’s move on to how the E-mail Router handles Incoming E-mails. E-mail Router – Incoming E-mails: This process is a little more complex but, theoretically, is a simple process as well. 1. So let’s continue to work with the concept that a user sent an e-mail out of CRM to a CRM Contact record. That Contact responds back to the user and that e-mail is now inside of the CRM user’s e-mail box. This is illustrated in the picture above as step 1. 2. We now need to get the e-mail response from the CRM Contact into CRM. To do that, we configure the user’s settings and the E-mail Router to connect to the CRM user’s mailbox. We will discuss the configuration in a future blog post. In order for the E-mail Router to establish a connection to the e-mail server, the E-mail Router must pass credentials to the e-mail server of a user that has full mailbox access permission to the mailbox. The E-mail Router then crawls through the Inbox and sub-folders of the Inbox for that user’s mailbox. This is shown in the picture above as step 2. 3. For each e-mail in the user’s inbox, the E-mail Router will query the CRM server to determine if the e-mail message should be created as an e-mail activity or not. This determination is made based on a few different configuration options within CRM. This is step is shown in the picture above as step 3. If CRM agrees that the e-mail activity meets the criteria to be created into CRM, it will create an e-mail activity within CRM with the status of Received. If CRM does not believe it should be created as an e-mail activity within CRM, it will deny the request and give the reason of why it denied the request. It then logs a message with the E-mail Router and the e-mail message is then disregarded. Forward Mailbox As mentioned previously, the Forward Mailbox can only be used for Incoming e-mails. The idea behind the Forward Mailbox is that e-mails from CRM users are all forwarded as attachments to a common mailbox, commonly referred to as the Forward Mailbox. Then the E-mail Router connects to that mailbox and processes that one mailbox, rather than all mailboxes for all CRM users. Let’s take a look at what the flow looks like for the Forward Mailbox. 1. Again, let’s continue to work with the concept that a user sent an e-mail out of CRM to a CRM Contact record. That contact then replies back to the e-mail message. The e-mail response is then delivered into the CRM User’s mailbox on the e-mail server. This is show in Step 1. 2. Based on the forwarding rules deployed to the user’s mailbox, the e-mail server will forward a copy of the original e-mail message as an attachment to the Forward Mailbox as seen in Step 2. 3. The E-mail Router establishes a connection with the Forward Mailbox and processes each e-mail. This is seen in step 3. 4. Step 4 illustrates the E-mail Router querying CRM for each e-mail message within the Forward Mailbox to determine if it should be tracked inside of CRM. If it should, it will create an e-mail activity within CRM. If it should not be tracked, then CRM will disregard it. Either way, the e-mail in the Forward Mailbox inbox is deleted. CRM Outlook Client The CRM Outlook client functions a lot like the E-mail Router does for incoming and outgoing. Instead of the E-mail Router acting as the third party between the CRM server and the E-mail server, the CRM Outlook client is now handling the middleman duties. The main difference between the E-mail Router and the CRM Outlook client is the configuration. The authentication to the e-mail server is handled by the established connection between Outlook and the e-mail server and the authentication between Outlook and CRM is controlled by the CRM addin. The mail flow and processes are identical to the e-mail router. However, troubleshooting mail problems between the e-mail router and the CRM Outlook client is a little different. We will cover this in the troubleshooting portion of this blog post. To Be Continued… Back to the Intro At this point, you should have a good understanding of what the E-mail Router is, what the E-mail Router does, and how it does it. I hope you have found this helpful. If you have any questions, please don’t hesitate to write your comments within this blog. The next post will document some of the limitations of the E-mail Router.