Sure Fire Exchange Message Recalling

Alexander Zammit has been developing server applications for over 15 years. Most of his works involve Exchange integrated applications, including a FAX server, a mail security product and anti-spam products.

Imagine sending out a highly confidential email to the wrong recipient. Instead of panicking you confidently open the email from the Outlook Sent Items folder and click 'Recall This Message...' certain that this is going to work.

In How Exchange Message Recalling Works and Message Recall Success! ...kind of we had a close look at how message recalling works in Microsoft Exchange and Outlook. From our discussion it was easy to see that the chances of successfully recalling internal emails are slim. When it comes to emails addressed to foreign recipients, it's not even worth bothering.

Microsoft Exchange/Outlook users learnt the hard way to keep their expectations low in this area. Users often end up considering message recalling to be something like an e-apology, a method to admit an error upfront. However, apologizing is of little use in case of bad errors.

Luckily this is not the end of the story. Reliably recalling emails sent in error is possible and the solution works equally well for all emails whether sent internally or to foreign recipients.

Fixing a Flawed Design

What is the main reason causing message recalling to fail in Exchange? In my opinion the problem is rooted in the design. It is the fact that message recalling is entirely implemented at the client side. Recall attempts are only processed after that both the original and the recall request reach the recipient mailboxes.

The second important point is the fact that message recalling is a race against time. The race is over as soon as the recipient opens the email. The race is even shorter when foreign recipients are involved. As soon as our outgoing SMTP server delivers the email to the recipient server, the email is already beyond our control.

The third key point is the importance of recalling emails addressed to foreign recipients. Many organizations can do without the ability to recall internal emails. However recalling becomes critical when the communication involves clients, business partners and other foreign contacts. Ironically the native Exchange/Outlook recalling functionality does not cater for these emails.

This solution is very different from what Exchange provides. To begin with, WinDeveloper moved message recall processing to the Exchange server transport. The idea here is to block emails before reaching their destination. The process is illustrated in the animation that follows:

Here the sender is submitting emails from Outlook as usual. Instead of these being delivered immediately, the emails are held at the queue for a short while. During this time senders are able to recall their emails. If a recall request is submitted the email is deleted without the recipients ever knowing. If no recall request is submitted the email is released for final delivery.

Emails are only held at the queue for a short period of time, the length of which is configurable. The product allows you to setup a number of rules specifying different queue hold times for different email categories. So emails addressed to foreign recipients could be held for a longer period of time than emails addressed internally. You could also have a list of users who tend to handle a lot of confidential information (or make a lot of mistakes) and assign these a different queue hold time.

In practice the queue hold time is hardly ever configured in excess of 60 seconds. This product here is dealing with the most typical email recalling scenario. The one where you realize an error was committed as soon as you click Send. From that point, opening the email and clicking 'Recall this Message' only takes a few seconds. Indeed 60 seconds is normally only assigned when dealing with foreign recipients.

For internal emails one could set the queue time below 20 seconds and still be able to satisfy a large number of recalls. Setting the time to 0 instructs the product to immediately deliver the emails.

The Server Side Advantage

Server side recall processing can deal with internal and foreign recipients equally well.

Nothing new is installed at the client machine. Users just recall emails from Outlook as usual.

Success/Failure Notifications can be relied on. If a success notification is returned you are certain that the email did not reach its recipients. In Message Recall Success! ...kind of I showed you that this is not the case when relying on native recalling.

Monitoring the recall success rate. Being centralized at the server, you of course get all the advantages typical of server applications including the ability to log each recall attempt and also archive deleted emails if necessary.

Final Tips

Today we discussed an MS Exchange add-on that greatly improves the message recalling success rate. The most appealing characteristic of this application is the way it integrates into Exchange, making it completely transparent to users. The only thing users will notice is the greatly improved recall success rate.

We all have our stories of email blunders. Most of these only cause some blushes. However at the work place errors may be costly. Smaller blunders may easily make an Organization look unprofessional. More serious errors may cause more direct loss of business. Priced at $290 for a single server license with no user limitations, justifying this investment is a no-brainer.

Yesterday I attempted to recall an email message sent using MS outlook 2010 with notification turned on. One recall attempt failed but I have not received any notification whether the other recall attempt to a second recipient failed or succeeded which greatly concerns me. I attempted to send an email to myself and then recall it yesterday. It still sits in my inbox waiting to be read with no indication that I attempted to recall it and no indication it failed or succeeded to recall it either. The need to recall is urgent and critical. Please advise