Process Messages |
 |
When a new message is downloaded |
|
|
 |
When a new message is downloaded, it is ready to be processed by
the application. Various action can now be taken. For instance, automatic
reply to a customer requests, processing unsubscribe requests,
processing bounces and many more. |
 |
The following options may be selected: |
 |
Call Mailing_OnReceiveMail() script event (advanced): The
Mailing_OnReceiveMail() event from the
Global Script is called by the application when a message arrives in the Inbox
folder. Enter your own VBScript code in this event. See the Server Side Scripting Guide for details. |
 |
Apply the following rules: A message rule is a set of actions
that will be executed if one or more conditions are verified. For
example, removing the sender of the message from the receivers list if
the subject contains the word 'Remove'. In order to create a new
rule, click on Add a rule on the right. In order to edit an
existing rule, click on in the rules table |
 |
|
 |
Conditions |
|
|
 |
1. Find values in the message body: Search for one or more text
values in the message body. If the message contains an html part and an
alternative text part, the search will be performed in the html part
only. |
 |
2. Find values in the subject: Search for one or more text
values in the message subject. |
 |
3. Find values in a header field: Search for one or more text
values in a header field (header fields examples are available in the
Knowledge Base - Header Fields). |
 |
4. Find values in a body field: Search for one or more
text values in a body field. A field in a message body is represented by
the following format: " field name: field value ". If the field value is on multiple lines, it must be between quotes (for
more details, see the Webforms Sample). |
 |
5. Find values in the 'To' field: Search for one or more
text values in the 'To' field. |
 |
6. Find values in the 'CC' field: Search for one or more
text values in the 'CC' field. |
 |
7. Find values in the 'From' field: Search for one or
more text values in the 'From' field. |
 |
8. Check the message date: Check if the message sent date is
included in a specified interval. |
 |
9. Check the message size: Check if the message size is included
in
a specified interval. |
 |
10. Check the message priority: Check the message priority. If the priority is not set, the default message
priority is 'Normal'. |
 |
11. Delivery Status Notification (DSN): Check if the message is a
DSN / Bounces. A DSN is an email sent by the recipient mail server. It
indicates if the message has been delivered, delayed, failed, relayed or
expanded (for more information on how to manage DSNs, see Knowledge Base - Managing DSNs or Bounces):
-
Delivered: Indicates that the message has been sussessfully delivered. For receiving this DSN type, you need to indicate that you want to receive success DSNs in the mailer properties.
-
Relayed: If you have indicated in the
mailer properties that you want to receive DSN when the message is delivered (see
above), the
relayed DSN type warns you that the receiving mail server does not create DSN for successful delivery.
-
Expanded: Indicates that the message has been sussessfully delivered but forwarded directly to other email addresses. Therefore, it is possible that you receive new DSNs regarding the same message.
-
Failed: Indicates that the message delivery has failed. This can be due to many circumstances. To refine the processing of failed DSN
according to these circumstances, see Knowledge Base - Managing DSNs or Bounces.
-
Delayed:
Indicates that the message has not been successfully delivered but that
the mail server is still trying to deliver it. Therefore, it is possible that you receive new DSNs regarding the same message.
The delivery can be delayed for many circumstances. To refine the processing of
delayed DSN according to these circumstances, see Knowledge Base - Managing DSNs or Bounces.
|
 |
12. Received date and time schedule: Check if the message is
received on specific day(s) and hour(s) of a week. |
 |
13. The record exists in a data source: Search is performed by
comparing a constant value or a message header with a data source field.
|
 |
 |
Example:
I want to process messages when the email address of the sender ('From' field)
already exists in the data source 'email' field.
- Choose the list where the email address should
be located.
- Click on Add Conditions (it is possible to
modify the list where the email address should be
located by clicking on DataSource).
- Indicate that the 'email' field
(1) is equal to
(2) a field from
the message header (3)
which is 'From' (4).

|
|
 |
14. The record does not exist in a data source: Does the opposite
of the above condition. |
 |
15. The message is digitally signed or encrypted: Check if the
message is digitally signed or encrypted. |
 |
16. The message is an unsubscribe request: Check if the message is an unsubscribe request.
This condition only recognizes the unsubscribe request received from a subscriber who used the unsubscribe link rendered by the application. |
 |
|
 |
Actions |
|
|
 |
1. Forward the message: Redirects the message to one or more
recipients. The message body or subject is not altered in anyway. The
redirected message is placed in the Outbox folder until it is sent. |
 |
2. Move the message to a folder: Moves the message from the
Inbox folder to any Inbox sub folder. If the destination folder does not
already exist, the application will create it automatically when processing
incoming messages. |
 |
3. Reply to the message: Creates a new message in reply to the
received message. The newly created message is placed in the Outbox. The
response can be a text or a message template (.eml file). The text can
include AMS code (VBScript). |
 |
4. Add a text to the project log: Appends some text to the
project log. This action can be used for debugging and reporting purpose. |
 |
5. Add a record to a data source: Adds a record to the receivers
list, the black list or any other data source. Record values may be set
with constants or fields that are extracted from the received message
(e.g. From field, etc.). |
 |
 |
Example:
When I receive a message, I want the application to add the email
address of the sender in the 'email' field of my
datasource.
- Choose the list where you want to add the email
address of the sender.
- A table presents you all the datasource
fields available. By clicking on the email field, I am going to associate the
email field with a value from the message I have
just received (it is possible to use another the
list by clicking on DataSource).
- Indicate that the The field email is equal to
the Email address from the 'From' field.
|
|
 |
6. Update a record in a data source: Modifies one or more
records in the receivers list, the black list or any other data source.
Records are searched the same way as in 'The record exists in a data
source' condition. Fields can be set with
constants, values extracted from the received message, and for numerical
values, they can be incremented or decremented. |
 |
 |
Example:
When I receive a DSN, I want to increment by 1 the DSN
field of the recipient.
- Choose the list where the DSN field is located.
- A table presents you all the datasource fields
available and another one lets you add conditions
for updating the datasource. In order to configure
this process, you have to follow 2 steps:
- First, add a condition in order to tell the application which record has to be updated. For instance, when
I receive a DSN regarding the message I sent to steve@mydomain.com, I want the DSN field incremented
by 1 for this particular recipient. Thus, the first step
is to say that you want to update the record where the 'email' field
(1) is equal
(2) to the DSN original recipient (3).

- Second, I set the action. By clicking on
in front of the DSN field, I am going to tell the application to increment by 1 the DSN field.

|
|
|
|
 |
7. Delete a record from a data source: Remove one or more
records from the receivers list, black list or any other data source.
Records are searched the same way as in 'The record exists in a data
source' condition. |
 |
 |
Example:
When I receive a DSN, I want the application to delete the
appropriate record of my datasource. For instance, when
I receive a DSN regarding the message I sent to steve@mydomain.com, I want
the application to delete the record where the 'email' field is steve@mydomain.com.
- Choose the list where the record to delete is located.
- Click on Add Conditions (it is possible to
modify the list you are using by clicking on DataSource).
- Indicate that the record to delete is the one
where the 'email' field
(1) is equal to
(2) the DSN original
recipient
(3).

|
|
 |
8. Delete the message: Deletes the received message. |
 |
9. Save sender certificate to receiver certificate store: When
receiving a signed or encrypted message, you can choose to save the
sender sertificate in your certificate store. It will allow you to send
to this receiver encrypted messages as you need the sender and the
receiver certificate to encrypt messages. |
 |
10. Call a web site page : Lets you run
actions on an external web application. |
 |
11. Stop processing rules: This prevents other rules from
executing, it does not prevent other actions in the current rule to be
executed. |
 |
|
 |
Test incoming messages processing |
|
|
 |
To test rules or scripts that process incoming messages, you can
simulate the reception of new messages. Click on Test and select one or
more messages (messages must be in MIME format, .eml file). |
 |
|
|