Share via


What Are the Stages of the Direct Mailer Pipeline?

The Direct Mailer pipeline runs components that screen recipients and personalize e-mail, and then send the personalized e-mail. The following table lists the stages of the pipeline.

Stage

Description

Throttle

Controls the speed of the Direct Mailer process.

Preprocess Recipient

Verifies the data about the recipient.

Filter Recipient

Allows additional filtering of the recipient list.

Create Cookies

Creates the cookies Direct Mailer uses to produce personalized content. The Direct Mailer uses a Web server to generate the content.

Compose E-mail

Composes and formats the message.

Send E-mail

Sends the message.

Postprocess Recipient

Updates the Direct Mailer database to mark those messages that were sent, and writes the appropriate error messages if needed.

Throttle Stage

The Throttle stage controls the speed with which the pipeline processes the direct mail messages. This controls the load on the Simple Mail Transfer Protocol (SMTP) server. The following table lists the components related to this stage.

Component

Description

ThrottleDMLPerformance

Waits a specified number of milliseconds. The Direct Mailer program, Dmlrun.exe, calculates the delay needed to maintain an appropriate delivery rate. It passes this delay to the ThrottleDMLPerformance component through the Context dictionary.

Preprocess Recipient Stage

The Preprocess Recipient stage verifies data such as whether there is a recipient address. The following table lists the components related to this stage.

Component

Description

VerifyRecipientData

Checks multiple values in the pipeline dictionaries to verify data about the recipient. If any one of the checks fails, the component sets the RCP_BYPASS key to True so that subsequent components in the pipeline skip the recipient.

Filter Recipient Stage

The Filter Recipient stage can perform additional filtering of potential e-mail recipients. Commerce Server Core Systems includes no component for this stage (other than the Scriptor component). However, you can add your own custom component to perform filtering. For more information, see Building Pipeline Components.

You can test recipient names against an opt-out list in this stage. However, you may have better performance if you remove the opt-out names from the mailing list in the List Manager module before running the mail job.

Components that you write for this stage should check and, if necessary, set the rcp_bypass key in the Order dictionary. The component should set the rcp_bypass key to True if subsequent components in the pipeline should skip the recipient.

Create Cookies Stage

This stage collects data to create a cookie to use with an ASP.NET page to generate a personalized message. The following table lists the components related to this stage.

Component

Description

CreateUPMCookie

Combines information from the Order and Context dictionaries and creates a Cookie dictionary in the Order dictionary containing the information.

Compose E-mail Stage

The Compose E-mail stage creates the body of the e-mail message and adds any attachments. The following table lists the components related to this stage.

Component

Description

ComposeDMLMessage

Creates the body of a direct mail e-mail message. Generates the cookie from data in the Cookie dictionary if the e-mail is personalized.

AddAttachments

Uses the Collaboration Data Objects (CDO) for Microsoft Windows to add the attachments to the message.

Send E-mail Stage

The Send E-mail stage verifies the body of a direct mail e-mail message and sends the message. The components related to this stage are shown in the following table.

Component

Description

VerifyMessageBody

Use to check the body of a direct mail e-mail message.

SendPrecomposedMessage

Use to send a direct mail e-mail message composed in earlier stages in the pipeline.

Postprocess Recipient Stage

The Postprocess Recipient stage can perform additional recipient processing such as recording information in a database. Commerce Server Core Systems includes no component for this stage (other than the Scriptor component). However, you can add your own custom components. For more information, see Building Pipeline Components.

See Also

Other Resources

What Is the Direct Mailer Pipeline?