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 |
---|---|
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 |
---|---|
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 |
---|---|
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 |
---|---|
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. |
|
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 |
---|---|
Use to check the body of a direct mail e-mail message. |
|
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.