Thursday, April 28, 2011

New Feature: Preserve the Message-ID in Transactional Emails

JangoMail now has a new checkbox on the Settings --> SMTP Relay page, that allows you to preserve the original Message-ID of an email sent via the SMTP relay. By default, the Message-ID is overwritten by the JangoMail system Message-ID.


Here is an example of a JangoMail system Message-ID:

Message-ID: <254970262215471@jngomktg.net>

It's a unique number followed by @jngomktg.net. We have received a few requests from JangoMail clients to preserve the original Message-ID of the message transmitted through the relay instead of overwriting it with the JangoMail system generated Message-ID. For example, an email sent using Mozilla Thunderbird has a Thunderbird-generated Message-ID that looks like:

Message-ID: <4DB66014.1070804@silicomm.com>

In this example, Mozilla Thunderbird's Message-ID contains a unique string of alphanumeric characters and uses the domain of the receiving email address. If you check the Preserve Message-ID box, this will also be the Message-ID in the final email delivered to the recipient. If you leave this box unchecked, this Message-ID will be replaced by the JangoMail system Message-ID.

Calling the API directly

If calling the transactional email API directly via the SendTransactionalEmail method, you can specify a custom Message-ID in the Options parameter using the CustomHeaders attribute:

Options:

OpenTrack=True,ClickTrack=False,NoClickTrackText=True,SkipUnsubCheck=False,SkipBounceCheck=False,UseSystemMailFrom=True,CustomHeaders=Message-ID:<4DB65FC8.8050705@silicomm.com>

Why is this useful?

The new Preserve Original Message-ID setting grants you full control of the Message-ID header value. This is useful if you have a custom reply management system in place, such that responses and bounces can be tagged with their original Message-ID.

Tuesday, April 26, 2011

Issue Resolved: Delivery of SMS text messages to Sprint via the email gateway

Several weeks ago, a client reported that transactional email sent to the SMS email gateway for Sprint (@messaging.sprintpcs.com domains) were not being delivered. Upon investigation by our deliverability team, we found the SMTP logs showed successful delivery, which indicated that some type of filtering was taking place after receipt by Sprint's email servers but before delivery to the customer's phone. Isolating the issue proved to be difficult, as the postmaster team at Sprint was unwilling to assist our deliverability team in resolving the issue. Through a series of trial and error tests, the issue was isolated to the Message-ID header present in all emails sent from JangoMail. Typically, the Message-ID header looks like:

Message-ID: <254970262215471@jngomktg.net>

It's a unique number followed by the domain jngomktg.net, which is a domain not used for anything else except the Message-ID header in emails sent by JangoMail. The Message-ID must be a syntactically valid email address, but not a real-world valid email address, as specified by RFC 2822, section 3.6.4.

In our trial and error testing, we found that the presence of the domain jngomktg.net resulted in non-delivery of the text messages to Sprint phones. Changing the domain in the Message-ID to jsmtp.net, another one of the many domains used throughout the JangoMail application, resolved the issue.

Message-ID: <254970262215471@jsmtp.net>

Therefore, all emails, including both broadcast and transactional emails, delivered from JangoMail to @messaging.sprintpcs.com recipients will have a Message-ID containing jsmtp.net, while all other emails will use the traditional Message-ID domain of jngomktg.net. Furthermore, we will soon be launching a feature that allows you, the user, to completely customize the Message-ID header with your own internally generated identifier.

We don't yet have an explanation as for why jsmtp.net results in delivery while the presence of jngomktg.net results in non-delivery, but we hope this information proves useful to JangoMail customers and the email marketing community at large, in resolving delivery issues to the SMS email gateway for Sprint.

Sunday, April 03, 2011

New Feature: RSS to Email Campaigns

This morning we're excited to announce the launch of our RSS to Email feature -- the ability to have JangoMail monitor your blog, and automatically email your subscribers whenever a new article is posted. The JangoMail RSS Email Campaign generator supports the following feed types:
  • RSS 1.0
  • RSS 2.0
  • Atom
There are two steps to setup RSS to email publishing for your blog.

Step 1: Create an RSS email template

Go to the Messages section and click on Compose New Message. You can either create a campaign from scratch, or use the existing Basic RSS to Email Template that appears as an option when you click on with a JangoMail Smart Template. Click the Select icon to select this template.

An RSS campaign template can have the following personalization variables in the Subject and Message areas:

%%rss_author%%
%%rss_title%%
%%rss_content%%
%%rss_url%%

The provided basic RSS template makes use of all of these variables. You can also customize the basic template by choosing it and then making your own modifications.



Important Note: To save your template to the system, just Send or Preview it to at least one recipient.

Step 2: Setup your blog's RSS feed in JangoMail

Next, set up your blog's RSS Feed under Settings --> Sending and Receiving --> RSS Feeds.



If you don't know your blog's RSS feed, try your blog address, followed by "atom.xml" or "rss.xml". For example, the feed for the JangoMail In Progress blog can be accessed at either:

http://blog.jangomail.com/atom.xml or http://blog.jangomail.com/rss.xml

You will need to know the location of your blog's feed before you can proceed with this feature.

Click on Add RSS Feed and fill out the rest of the form, as shown below. In this example, we are monitoring the TechCrunch blog, and the feed URL is http://www.techcrunch.com/feed/atom. We have to set it to send immediate email notifications whenever a new blog post is published, and the emails will go to the List #41172369, as well as to recipients from the web database included in the given SQL query:




Choosing Recipients


When specifying which recipients will receive RSS email campaigns, you can choose from:
  1. An entire Email List, or multiple Email Lists.
  2. A segment of an Email List. If there are no items in the dropdown menu, you can create List Segments under Lists. Click on the Edit Lists Icon next to the list you would like to filter. Then click the List Tools Tab and go to Filter and Send. Choose your filter settings and save the query. It will now show up as an option undder Send to List Segment in the screen above.
  3. A SQL query called against your web site's database. For this to work, you must have a Master Profile already set up under Settings --> Integrating JangoMail with Other Systems --> Set Master Profile for Web DB. Once this is set, specify a SQL SELECT statement in this box.

Scheduling

JangoMail will check feeds for new posts once every minute and will send out your new post to your subscribers almost instantly, if you have your feed Schedule set to send Immediately. If you instead set it to Daily and enter a time of day, then JangoMail will wait until the specified time, either on the same day, or the next day, before sending out new posts.

Reports

After you've sent some RSS email campaigns, you can view your campaigns' statistics under the Reports tab. Go to Broadcast Message Reports and click the Filter icon. To view just the statistics for RSS email campaigns, set the appropriate Filter:


How is JangoMail's RSS-to-Email feature different from other RSS-to-Email services?

JangoMail's RSS to Email campaign feature does much more than other RSS/email tools, including allowing you full control of the design of the emails, full tracking (opens, clicks, integration with Google Analytics), and complete list management (unsubscribes, bounces, complaints via feedback loops).

Additionally, JangoMail's tool allows you to send to an entire Email List, a segmented portion of an Email List, or a set of recipient data pulled in real-time from your web site's database.

Resources:

To read more about RSS and ATOM specifications, see the articles:

http://en.wikipedia.org/wiki/RSS

http://en.wikipedia.org/wiki/Atom_%28standard%29

http://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared