Wednesday, August 25, 2010

Testing Exchange 2007 or 2010 hub transport server email delivery with an email with an attachment

I believe most Exchange professionals out there already know about the way of testing Exchange 2007 or 2010’s hub transport server’s delivery by simply creating an email file and dropping it into the C:\Program Files\Microsoft\Exchange Server\TransportRoles\Pickup folder for delivery but there was this one day when I was asked the following question:

Ok, so we both know how to test mail delivery with the eml file but we’re currently experiencing complaints from the client that the automatically generated emails with those reports are taking too long to get to them. Terence, do you know how we can include an attachment to test?

I didn’t know the answer and since I ended up proving that it wasn’t our Exchange that was causing the delays in delivery, I never spent the time to figure it out. After having this “to-do” list linger in my mind, I finally asked the question on our Partner Support Forums and it’s actually quite simple:

  1. Open Outlook Express.
  2. Create an email.
  3. Add content to email.
  4. Save file as eml.
  5. Drop file as we usually do into the pickup folder.

The instructions made me ask myself: “Why didn’t I think about that?”

I like to give credit to where credit is due so let me thank Bob Huang from our Partner Support for this.

Now to add some value to this post, let me include the issues while trying to get this to successfully work:

Step 1 – Create the email in Outlook Express

image

Step 2 – Save file as someFile.eml

image

Step 3 – Drop the file into the C:\Program Files\Microsoft\Exchange Server\TransportRoles\Pickup folder for delivery.

image

Step 4 – Looks good so far

image

Step 5 – It appears Exchange doesn’t like this file seeing how it renamed it to “.bad”.

image

Let’s delete it and look at the content.

Step 6 – Content of the EML file

image

To: "tluk@unislumin.com"
Subject: Testing EML w/attachment delivered via Pickup Folder
Date: Wed, 25 Aug 2010 10:30:41 -0400
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_NextPart_000_000A_01CB4440.A2AA0C00"
X-Priority: 3
X-MSMail-Priority: Normal
X-Unsent: 1
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5931

This is a multi-part message in MIME format.

------=_NextPart_000_000A_01CB4440.A2AA0C00
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_000B_01CB4440.A2AA0C00"

------=_NextPart_001_000B_01CB4440.A2AA0C00
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Testing
------=_NextPart_001_000B_01CB4440.A2AA0C00
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.18928">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT size=3D2 face=3DArial>Testing</FONT></DIV></BODY></HTML>

------=_NextPart_001_000B_01CB4440.A2AA0C00--

------=_NextPart_000_000A_01CB4440.A2AA0C00
Content-Type: text/plain;
name="Test Attachment.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="Test Attachment.txt"

Some text.
------=_NextPart_000_000A_01CB4440.A2AA0C00--

Step 5 – Analyzing content

The first problem I see is that there is no From line indicating where this mail is from so let’s modify the text to:

From: "tluk@unislumin.com"
To: "tluk@unislumin.com"
Subject: Testing EML w/attachment delivered via Pickup Folder
Date: Wed, 25 Aug 2010 10:30:41 -0400
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_NextPart_000_000A_01CB4440.A2AA0C00"
X-Priority: 3
X-MSMail-Priority: Normal
X-Unsent: 1
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5931

This is a multi-part message in MIME format.

------=_NextPart_000_000A_01CB4440.A2AA0C00
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_000B_01CB4440.A2AA0C00"

------=_NextPart_001_000B_01CB4440.A2AA0C00
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Testing
------=_NextPart_001_000B_01CB4440.A2AA0C00
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.18928">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT size=3D2 face=3DArial>Testing</FONT></DIV></BODY></HTML>

------=_NextPart_001_000B_01CB4440.A2AA0C00--

------=_NextPart_000_000A_01CB4440.A2AA0C00
Content-Type: text/plain;
name="Test Attachment.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="Test Attachment.txt"

Some text.
------=_NextPart_000_000A_01CB4440.A2AA0C00--

Step 6 – Looks like Exchange still doesn’t like it

image

Step 7 – Reviewing the file again, I went ahead and removed the quotes from the “From” and the “To”.

From: tluk@unislumin.com
To: tluk@unislumin.com
Subject: Testing EML w/attachment delivered via Pickup Folder
Date: Wed, 25 Aug 2010 10:30:41 -0400
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_NextPart_000_000A_01CB4440.A2AA0C00"
X-Priority: 3
X-MSMail-Priority: Normal
X-Unsent: 1
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5931

This is a multi-part message in MIME format.

------=_NextPart_000_000A_01CB4440.A2AA0C00
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_000B_01CB4440.A2AA0C00"

------=_NextPart_001_000B_01CB4440.A2AA0C00
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Testing
------=_NextPart_001_000B_01CB4440.A2AA0C00
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.18928">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT size=3D2 face=3DArial>Testing</FONT></DIV></BODY></HTML>

------=_NextPart_001_000B_01CB4440.A2AA0C00--

------=_NextPart_000_000A_01CB4440.A2AA0C00
Content-Type: text/plain;
name="Test Attachment.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="Test Attachment.txt"

Some text.
------=_NextPart_000_000A_01CB4440.A2AA0C00--

Step 8 – This time Exchange successfully delivers the message.

image

image

image

========================================================

So now some of you might ask: “Do I have to use Outlook Express because I don’t see an eml option in Outlook?”

I asked myself that question as well because the options I saw while trying to save an email in Outlook were:

Txt, OFT, MSG, HTM, HTML, MHT.

image

I don’t have the answer yet but I did ask Bob about this and will update this post when I get an answer.

I hope this helps someone out there that comes across this and needs to test Exchange with attachments.

Update

I got an answer back from Microsoft and it looks like Outlook cannot save messages in the EML format and this is by design. As a workaround, they suggested to use 3rd party converters such as the following:

http://bitdaddys.com/outlookEMLandMSGconverter.html

http://www.fileguru.com/apps/convert_msg_to_eml

1 comment:

Annie Monie said...

Once recipients open your email and then click through on the links, it's vital to have a landing page that will guide them to the final conversion. It's very important not to just chuck users onto your home page or category page. In order to guide the subscriber through the buying cycle, you'll need to create (and test) different email campaign landing pages that are consistent with the subject line and body content. Things to consider for different landing pages: when you will be displaying shipping costs, payment methods etc.

email testing