...
The start step is automatically created when the campaign is first created. It is displayed at the bottom of the screen (scroll down to see it). It does no action. It serves as an anchor. The start step can contain only one child step and cannot be deleted.
Figure 73 - The Start Step anchors all other steps
The start step contains hyperlinks common to all steps. While the start step cannot be deleted, all other steps also contain a [Delete] link. The Delete action is discussed separately later in the chapter because it is complex.
Hyperlink | Action |
[View History] | This link will open a report page showing every customer that has ever passed through the step. The Step & Recipient History section discusses the history report in detail. |
In Queue | This link will display all active recipients whose 'Next Step' is the Start step. These are customers who are newly enrolled. |
Total Executions | This link will display all recipients – active or otherwise – who have ever passes through this step. |
Successful | This link displays a history of all customers who have successfully completed this step. The start step does nothing, so all recipients will succeed this step. |
Failed | This link displays a history of all customers who failed at this step. The start step cannot fail. Other steps may fail for numerous reasons. |
[Add Step] | The Add Step link displays the Add Step form. |
Adding a Step
Tip |
---|
Tip: A brief word about step names. The name can be anything you wish within the max character limit. However, the names are used as the output from logic steps to determine which step executes next. For that reason, keep your names simple. Do not add leading or trailing spaces, as that's sure to cause trouble down the road. Underscores instead of spaces may also prevent typing errors when matching logic outputs to child steps. The velocity error checker does not validate your $result values to child step names. It is your responsibility to get it correct. |
Click the [Add Step] link at the bottom right of any step to add a step. The link will not be available for any step restricted to one child and already having a child. The Edit/Add Step form displays all properties available for all steps. Once a type is selected, non-applicable properties are grayed out.
Figure 74 - Edit/Add Campaign Step Form
Figure 75 - Add/Edit Step Form showing the different types of Steps
Anchor | ||||
---|---|---|---|---|
|
...
- Has the customer ordered before?
- Has the customer ordered a specific item before?
- Has the customer ordered with the last XX days?
- How many items has the customer ordered?
- Has the customer spent more than XX dollars?
- Is today a particular month/week/day?
- Is the customer in a particular state or region where one offer may be preferred?
Warning |
---|
Warning: The Logic step is a two-part step. The step is created and saved first, and then the logic is added. This allows for extra error checking of the velocity code. Do not forget to add code to your logic step. |
To create a logic step, select Logic as the type, provide a name for the step, and click Ok. No other settings are needed. Once created, the logic step will appear below its parent, and the overall tree structure will re-position accordingly. A small warning icon will appear in the bottom left of the step. This is an alert for empty logic. Any step with empty logic will fail, so the alert is your cue to add logic.
Figure 76 - Warning! A newly created logic step needs code!
Click the [Edit Logic] link to add velocity code. A form will display providing a text area for velocity code. The Velocity Code section that follows provides detail on creating complex code.
At a bare minimum, the logic step code must set the value of $result to the name of a child step.
Figure 77 - Campaign Logic Step - Logic Editor
The editor will validate the code when the Ok button is clicked. Any errors will display the output from the velocity compiler. Admittedly, the error messages can be vague. However, the most important feedback is the line number. Use the line number to troubleshoot the problem. Google, the UltraCart forums, and the Apache Velocity mailing lists will help solve the problem.
Figure 78 - Campaign Logic Step - Velocity Syntax Error Message
A logic step may have as many children as desired. Click the [Add Step] link and add steps as needed. The screen will re-position the steps as each are added.
→ |
→ |
Tip | |||||||
---|---|---|---|---|---|---|---|
Ending a campaign: If you wish to end a campaign at a logic step, simply set the $result variable equal to _ENDCAMPAIGN_
|
Tip |
---|
Looping: If you wish to loop a campaign, then set a logic step $result variable equal to _GOTO:StepName_ |
Anchor | ||||
---|---|---|---|---|
|
...
Because email steps use templates, creating an email step is relatively simple. The major decisions are template selection and parameter overrides. Create an email step by clicking the [Add Step]. Supply a name and select a template. Click the Ok button to create the step.
Figure 79 - Email Step Creation Example
The Email Step (shown below) has some links on it the other steps do not.
Figure 80 - Autoresponder Campaign Email Step
Email Step Links
Hyperlink | Action |
Template | Click the template name to visit the template. From there, you may change the email content or parameters. |
[View Performance] | This link will open a performance report showing email specific results for the step including bounces, opens, link clicking, and purchasing as a result of a campaign. |
Opt Out | The Opt Out statistic displays the count of recipients who opted out during this step. Click the link to see a detailed list of every recipient who opted out of the campaign at this step. |
Sales Response | This link displays the total sales attributed to this email. Click the link to see a list of all recipients who placed orders for this campaign. Please see the section near the end of the chapter titled "Attributing Sales to a Campaign" for important details about Sales Response. |
Suspend | Click to suspend the step. A suspended step is skipped over, and the next step executes. This is a way to ice a step and still allow the campaign to continue. |
[Parameters] | Click to edit email parameters. See the following discussion on editing parameters. |
Editing Parameters
Email Templates containing parameters may have step specific values. To edit parameters, click the [Parameters] link on the Email step. You'll notice that the pointer doesn't change to a hand icon. This is a result of the drag-n-drop ability of steps (discussed later).
Figure 81 - Email Step's Parameters link
When clicked, a form appears displaying the email template parameters and the defaults. Override any defaults by filling in the input field to the right of the default value. Leave the field blank to use the default.
Anchor | ||||
---|---|---|---|---|
|
...
The Pause step does what it's named. It pauses. Pauses are useful to allow a customer to react to an email, or to simply avoid sending customers too many emails.
To create a Pause step, click the [Add Step] link of any step and set the type to Pause in the Add/Edit Step form. The only other requirement for a Pause step is the duration. The Pause Duration is stored in hours, but the entry field allows shorthand for days and weeks as well. If no unit is provided, the number is assumed to be hours. The Pause Duration only accepts whole numbers. If fractional days are needed, enter hours (example: 3.5d = 84h).
Figure 82 - Adding a Pause Step
Here are some shorthand examples:
Rearranging Steps
Campaign steps may be rearranged by dragging and dropping a step onto another. When a step is dragged and dropped, all of its children come with it. The target step will highlight in yellow when another step is dragged onto it. Be patient with moving steps. Do not make another move while the Wait message is displaying.
→ |
Rules for Rearranging
- Dragging steps onto a step with no children is a straightforward appending to the target step. The dragged step becomes a child of the target step.
- If a target already has children, the result depends on the target type.
- If steps are dropped onto a logic step, they become children of the logic step. Since a logic step can have numerous children, the dropped step becomes a sibling to any other children the logic step already has.
- If steps are dropped onto any other step that already has children, then the dropped step (and its children) is injected between the target and the target's children.
Action: Drag Step B onto Step D
Result: Step B and C inject between
Step D (target) and its children (Step E)
- If the step being dragged (moved) has more than one branch, the target's original children are appended to the first branch. For the example below, Step B is dragged onto Step D. Step E is appended to the first branch. If this is not desired, simple move Step E to its new parent.
Action: Drag Step B onto Step D
Result: Step B, C and F inject between Step D (target)
and its children (Step E). Step E is appended to Step C.
Deleting Steps
Deleting a step raises two issues.
...
- Delete the children as well
- Shift the children up, filling the hole caused by deleting the step.
- What do I do with recipients who are currently scheduled for the deleted step?
...
These options are presented when the [Delete] link is clicked for a step.
Please note: if you delete a Logic step containing more than one branch, the branches cannot be shifted up because they would collide. If you wish to keep the branches, move them to different steps before deleting the Logic, and then move them back in the desired order.
Figure 83 - Warning Message when deleting a Logic Step with multiple children