alex in a nutshell

September 10, 2007

Managing email workflow with AEP

Filed under: — Alex Salamakha @ 12:31 PM

I’m a shareware author and that implies a lot of email-related routine. Since I hate routine tasks, I’ve been looking at ways to streamline my emails workflow lately. Here is what I mean by routine tasks. Each shareware author sells his software over the Internet via one of the online sales providers (Regnow, RegSoft, Plimus, ShareIt, etc.). Whenever somebody purchases your software you receive an email with order details – product purchased, number of copies, total, GST/VAT, user name, address, etc. Your regular routine is:

  1. Check email
  2. Copy user name from email into Clipboard
  3. Run Code generation utility
  4. Paste user name and number of licenses into the code generation utility
  5. Click Generate code button
  6. Copy generated code into Clipboard
  7. Create an email based on a template for particular product
  8. Enter user name into the email
  9. Paste generated code
  10. Press Send button

The most important bit is that you have to be physically present in front of your computer in order to perform the above mentioned 10 steps. What if you want to store the user details in the database or check customer’s email against previous orders to offer a discount? More routine!

As a software developer I can write my own email processor. While it’s an option, I see it as a waste of time. Then Biztalk, perhaps? It’s nice and easy for a programmer, BUT with Standard Edition’s price of US$8,500 it’s not really an option for many people. Here is the alternative – Advanced Email Parser (AEP).

Why? First of all its cost. It starts at US$400, 1/20th of Biztalk’s price. Enterprise license costs double that (AU$999 + GST in Australia). Compare that with the cost of BizTalk Server 2006. Secondly, AEP is quite simple to use, user doesn’t require programming skills to create simple solutions. However, you may require a skilled programmer in case of complex business processes integration (various back-end systems, databases, web services, etc).

Here is how I can fix the above mentioned problem of processing an online order for my shareware program Quick To-Do Pro with AEP.

First of all, make sure that server is stopped by running AEP Service Manager:

AEP Service Manager

Then run AEP and create an email account:

Create email account

Once this is done, let’s move on to creating processing rules. A notification message looks like this:

Registration message

Let’s get started with the script. Create an email account to check:

Create email account

Then create rules to make sure that it’s a genuine order message. I’m checking for sender email and subject line.

Sender email filter

and subject line contains phrase Quick To-Do PRO:

Message subject

Now processing the contents of the email. I’m saving 4 fields – User name, Email, Quantity, and Order Id – into variables:


Repeat this as many times as you need for all variables: quantity purchased, customer email address, preferred user name, etc. Here lies the first challenge. User name for the reg. code should follow the algorithm:

if customer specified a preferred user name, use it, otherwise use customer’s name

This is implemented via Simple condition statement followed by SetVariableByTemplate.

Simple conditional variable

Setting Variable

Now run key generator, pass user name and quantity of licenses purchased as parameters, grab output and save it as a variable regCode:

Run key generator task

It’s time to send an email to customer by using SMTP Sender rule:

Send email rule

And here is the entire script:

Entire script to process an order for Quick To-Do Pro

Make sure you saved the script and restarted AEP service. Now I don’t worry about not being to respond to Quick To-Do Pro purchases 24/7. Simple, huh?

OK, that was a simple example. I can extend it to save Quick To-Do Pro‘s customer details to the database, etc. But I’m leaving this exercise to the reader.
Where else would you use AEP? Anywhere where you receive emails and would like to automate the process of handling those emails. Customer lost his login details or registration key for your software and dropped you a line? You can auto-reply with those details by writing a script that looks up in a database and emails it to customer. Received an order from your web store? AEP can put it into your database, trigger shipment by contacting your supplier’s system, and send customer a follow-up email with details. Basically if you ever need to integrate email processing into your business solution, AEP is a perfect answer.

Final note: AEP runs as Windows application or as a Windows Service. I strongly recommend running it as a service.

If you’re in Australia or New Zealand and would like to order Advanced Email Parser (AEP) or any solution based on it, contact Sydney-based Centizone Pty Ltd for a free quote.

No Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

Copyright © 1997-2017 Alexei Salamakha. All rights reserved
email:    Alex Salamakha on Facebook    Alex Salamakha on LinkedIn