Designing the Flow for an Online Dialog

When an online dialog goes live, PeopleSoft Online Marketing Dialog Execution Server (DES) executes a sequence of actions, such as sending broadcast emails to your target audience and displaying various web pages to respondents. This sequence of actions is called the flow.

This chapter describes how to use flows in Online Marketing, and includes the following topics:

Click to jump to parent topicUnderstanding Flows

A flow defines the sequence of actions that Online Marketing will perform after the dialog is deployed. The flow consists of a series of steps (actions) defining how you will reach the dialog’s target audience and how you will handle respondents and subsequent follow-up interactions.

Certain actions in the flow are scheduled to occur at a specific time. Other actions are triggered by a response from an individual in the target audience, such as displaying a particular web page.

Flows are created in the Flow tab of the Dialog Designer and can be as simple or as complex as needed.

The following sections describe the actions in a flow.

See Also

Designing Online Dialogs

Click to jump to top of pageClick to jump to parent topicAbout the Dialog Flow

The dialog flow contains two broad categories of actions: those used to reach your target audience, and those that occur as a result of audience members' responses to the actions reaching them.

The actions are executed in order based on when they were scheduled. At a minimum, a dialog must have at least one trigger —either a Date/Time trigger or an External Event trigger. Date/Time triggers can have broadcast email or custom action extensions following; External Event triggers can have a Landing Page, Web Link Promo, Standalone Web Page, or Single Email.

Whereas actions reaching out to customers use Date/Time triggers with actions that are executed when the specified date is reached, actions requiring a response from the recipient do not automatically execute any action unless they are in response to an action by a respondent. For this reason, these actions under different Landing Pages will not execute simply because all of the actions in the preceding section have been completed. They must be accessed explicitly.

Click to jump to top of pageClick to jump to parent topicTypical Dialog Flow

The following steps describe a typical dialog flow:

  1. The dialog begins by contacting a target audience with an offer. On the date and time specified in a scheduled action in a Date/Time Trigger, the target audience is reached through a broadcast email.

  2. People from the target audience respond by using their browser to open the specified Landing Page, which is the entry point to the dialog. On this page, the respondents will typically have to make some choices or provide information to the dialog.

  3. The flow continues by:

  4. At some point during the dialog, you may want to send another broadcast email to the same audience (such as a deadline reminder), or to a different audience.

  5. Once the dialog is over, it can be stopped (stopping broadcast and follow-up emails and making the web pages of the dialog unavailable to the outside world.)

At any time during the dialog, you can monitor the responses using ACE reports or Dialog Performance Reports.

See PeopleSoft Enterprise CRM 9 Application Fundamentals PeopleBook.

Note. If you are designing a complex dialog flow in which parts of it can re-execute, and if the flow contains multiple paths that converge into a common input action (such as an Intermediate Page), you should make sure that all paths leading from that common input action result in a web Submit action before they reach the input action the next time through the flow. Doing this will prevent your dialog flow from experiencing an error such as an infinite loop.

Click to jump to parent topicUnderstanding Flow Actions

This section describes the actions you can use in flows. They include sending emails to either an entire audience or a specific individual, displaying web documents to a respondent, updating the database with information provided by the respondents, and defining the flow of the dialog.

The flow actions are listed in the Flow designer, and include the following:

Click to jump to top of pageClick to jump to parent topicDate/Time Trigger

The Date/Time Trigger is one way to start a section in the flow. Within a Date/Time Trigger, you add the actions that you want scheduled based on the date specified in the trigger. The actions attached to the trigger can be scheduled to occur on that date or a specified period (hours, days, weeks, months) following that date. The date associated with a Date/Time Trigger can be entered explicitly in the Date/Time Trigger builder.

All Broadcast Email actions must be attached to a Date/Time Trigger to execute. Date/Time Triggers can schedule the execution of any number of actions. Custom actions can be attached to Date/Time Triggers.

See Defining the Flow of the Dialog.

Click to jump to top of pageClick to jump to parent topicRepeating Date/Time Trigger

You can define repeating versions of Date/Time Triggers . Repeating Date/Time Triggers start a section in the flow. Following a Repeating Date/Time Trigger, you add the actions that you want executed on a repeating basis (hourly, daily, weekly, or monthly) based on the starting date specified in the trigger. You can schedule the repeating actions to begin on that date or on a given number of hours, days, weeks, or months following that date.

You can enter the date and time associated with the beginning of a Repeating Date/Time Triggers explicitly in the Date/Time Trigger builder.

Scheduling Repeating Date/Time Triggers (Broadcast Email Only)

Repeated actions occur as scheduled in the Repeating Date/Time Trigger, and mail jobs are sent out at the times and intervals specified when the trigger and action are defined. However, there are two special cases, illustrated in the following table, that you must consider when scheduling repeated actions.

Jobs that Continue Past Next Scheduled Interval

The smallest repeat unit for Repeating Date/Time Triggers and their actions is one hour. If you are sending broadcast email messages to a large number of people, the time required to process them all (remove duplicate contacts so each person only receives the email once) might be longer than one hour. If this occurs, the Dialog Server ignores any job that should begin during the time it is processing the first job (this is called overlapping), then resumes at the next hourly interval after the first job is completed.

For example, suppose you have three instances of a broadcast email job scheduled under a single Repeating Date/Time Trigger: Instances A, B, and C. Instance A is scheduled to start at 2:00 p.m., and instances are set to repeat hourly. Normally this would mean that Instance B would begin at 3:00, and Instance C at 4:00. However, Instance A is being sent to a large number of contacts, and does not finish processing until 3:20. In this case, the broadcast email will overlap Instance B, forcing Instance B to be skipped. Instance C will begin as scheduled at 4:00 (see illustration). You should take this behavior into account when planning and setting up your broadcast email jobs to avoid overlapping.

Pausing a Dialog During Repeating Date/Time Triggers

Online Marketing schedules repeated actions based on their triggers, not on the actions themselves. If you pause a dialog and then restart it, any actions that were scheduled to occur within the time the dialog was paused do not occur, with the exception of any actions that have already been queued prior to the pause.

For example, assume you have scheduled a Repeating Date/Time Trigger to start at noon today, with a series of actions set up to send broadcast email once every hour for the next six hours, starting at 1:00 p.m. The default interval for the Scheduler is one minute. The following examples describe what might occur depending on when the dialog is paused:

  • If you pause the dialog at 11:45 a.m. and restart it at 11:50, the scheduled actions proceed as planned. This is because the pause and restart of the actions both occurred prior to the Scheduler’s queuing of the Repeating Date/Time Trigger.

  • If you pause the dialog at 11:57 a.m. and resume it at 12:10 p.m., the scheduled actions will not proceed as planned. This is because the scheduler checks every minute to determine whether there are any actions that must be queued in the subsequent one-minute period, then queues those actions. Since the dialog was in a paused status at 11:59, the trigger has not been queued; therefore none of the actions associated with that trigger will occur.

  • If you pause the dialog at 1:30 and resume it at 1:45, all the actions proceed as planned. All the actions under the trigger have already been scheduled, and each action is not queued until approximately one minutes before it is scheduled to occur.

  • If you pause the dialog at 1:45 and resume it at 2:10, the 2:00 instance of the action does not occur (in the Scheduler it will show a status of Skipped), but all the subsequent actions do.

Warning! Be aware that Repeating Date/Time Triggers do not behave in the same way as Date/Time Triggers. Date/Time Triggers that have already executed will never re-execute even if you change the scheduled time to a later time on the same day; you must add a new Date/Time Trigger to the flow. Repeating Date/Time Triggers, when stopped and restarted, will continue executing any actions that have already been scheduled with start times that have not yet passed. Also, Date/Time Triggers that are scheduled for dates past the date the dialog is set to Live will be executed immediately. In comparison, a Repeating Date/Time Trigger skips dates that have already occurred when the dialog is set to Live.

Further, when a dialog containing Repeating Date/Time Triggers is put into the Broadcast Hold or Paused state and then restarted, all prior iterations of the trigger will be sent to the Scheduler with a state of Skipped.

See Using the Control Center.

Click to jump to top of pageClick to jump to parent topicExternal Event Trigger

An External Event Trigger is another way to start a process. It can link to the following items:

External Event Triggers and Landing Page

When the trigger connects to a Landing Page, the Dialog Link Report generates a URL associated with this trigger. Using this URL, external systems can invoke the trigger, which then activates the Landing Page action to serve the web page for the individual.

External Event Triggers and Web Link Promo

When the trigger connects to a Web Link Promo, the Dialog Link Report generates a URL for every audience that is specified in the web link promo action. A Web Link Promo allows users to enter the dialog from a banner ad or web link and metrics can keep track of the number of people accessing a particular link. This is useful for determining how much traffic is generated by banner ads located on different websites pointing to the same place in the dialog. Web Link Promos are typically followed by Landing Pages.

External Event Triggers and Single Email

External Event Triggers can connect to a Single Email (such as a survey email). Note that when integrating with a Case for sending surveys, it is required that the survey single email and the survey web pages reside in the same dialog. If they do not, then the case will not be able to access the survey report and score.

If a single email is specified to send to the respondent's email address, then the Individual ID must be passed in the URL for the external event trigger.

When the External Event Trigger is directly attached to a Single Email, the View URL hyperlink is not displayed, since there is no web page to view.

Note. Dialog authentication (specified by the Login Required check box in the Dialog Designer page) will not work in conjunction with a flow starting with an External Event Trigger directly connected to a Single Email activity. Dialog Check will check for this and report an error if this situation exists.

See Also

Java and PeopleCode API documentation delivered as part of your CRM Online Marketing installation

Understanding Surveys

Sending Case Surveys

User Authentication

Checking Online Dialogs

Click to jump to top of pageClick to jump to parent topicBroadcast Email

The Broadcast Email action specifies an email message to be sent to one or more target audiences.

Broadcasting an email to an audience is a typical method of starting an Online Marketing dialog. You can broadcast an offer to your target audience that includes the URL(s) generated by Online Marketing, directing recipients to respond to a specific Standalone Web Page or a Landing Page.

When you add this action to your flow, you will need to specify the email document to send, the target audience to reach, and the timing of the action relative to the previous action in the flow. You also need to specify whether the action's queue management behavior will override the global options for frequency management (how many emails a given person should receive in a given time period).

Note the following:

Broadcasting to Multiple Target Audiences

When sending a broadcast email, you can specify multiple target audiences, and the email will be broadcast to all contacts listed in each of the target audiences specified. However, since it is possible to have some of the same contacts included in more than one target audience, Online Marketing automatically ensures that duplicate emails will not be sent to the same contact for that specific email action.

Online Marketing sends the broadcast email to all unique individuals in the selected audiences. If the contact audience is in more than one audience, that contact is only listed once so the contact is not sent a duplicate broadcast email. For example, if a contact appears for the first time in the third target audience and again in subsequent audiences, then that contact will be dropped from the audience list from the fourth target audience on.

Therefore, the respondents will be identified as being part of the first target audience in which they are listed.

See Mail Service Operation.

See Setting Global Options.

Click to jump to top of pageClick to jump to parent topicWeb Link Promo

The Web Link Promo action allows you to generate a URL that the dialog will use to direct respondents to a Landing Page or Standalone Web Page of the dialog. Typically you generate Web Link actions for events such as placing a web banner ad, placing a print ad, sending direct mail, sending broadcast email through another source, etc.

Usually, a Web Link action is used to reach people who are not in your profile database. However, it is also possible to send a generated Web Link to an audience of contacts in your database (for example, to test the effectiveness of a direct mail offer against a broadcast email offer to the same audience).

By including a Web Link action in your flow, Online Marketing will generate a special URL (through the Link Report) to be used as the Web Link so Online Marketing can track the respondents as an audience. This special URL specifies the entry point to the dialog (a Landing Page or a Standalone Web Page) and also incorporates a code (called the tracking number) that is used to track the respondents. This code allows Online Marketing to know the audience that the respondent belongs to.

You must provide the generated URL to the people directing the development of the banner ad, direct mail, and so on so respondents can access the appropriate web page.

When defining target audiences for your dialog, you should create a different target audience for each Web Link you want to track separately. For example, you may want to track the effectiveness of two different banner ads. By identifying each with its own audience, you will be able to easily distinguish between the two. In this case, you would include both audiences in your Web Link. Online Marketing would then generate two separate URLs; one for each target audience.

When you add this action to your flow, you will need to specify a unique name and a description, the target audience for the respondents, and the Standalone Web Page or Landing Page entry point to the dialog.

Click to jump to top of pageClick to jump to parent topicCustom Action Extensions

Custom action extensions enable you to extend actions in the dialog flow. Custom actions are custom Java servlets and PeopleCode functions that can execute business logic, update or retrieve profile information, and even retrieve or post information to external systems.

Examples of custom actions include:

Note. Unlike custom content extensions included in documents, custom actions in the dialog flow ignore any data returned. Their purpose is to simply perform an action, and not to act upon data that might be returned. You should be aware of this fact when you select custom actions from the list of available choices.

See Using Extensions.

Click to jump to top of pageClick to jump to parent topicStandalone Web Page

The Standalone Web Page action specifies a web page as an entry point to the dialog, without any follow-up action to be performed. A Standalone Web Page action uses a web document without a Submit button. This type of page is useful to simply display information to a respondent. To include an entry point to the dialog where the respondent is to enter some information, you must use a Landing Page.

Although there is no submit button on a Standalone Web Page, you can include a web link in the web document to take respondents to another part of the dialog, or to another dialog. You do this using Web Link command in the Documents Designer.

See Designing Web Documents.

Click to jump to top of pageClick to jump to parent topicLanding Page

The Landing Page action specifies a web document to be displayed as an entry point to the dialog. This action starts a section in the flow. Once a dialog is entered, the flow executes the actions in the section, in order.

To use the Landing Page, a respondent enters data in the web page and then clicks the Submit button on the page. Based on the respondent’s input, you can have the flow make a decision on the next action to take.

When you add this action to your flow, an icon labeled On Submit is added below the Landing Page icon, indicating that the steps below it will occur as a result of a submit from a respondent.

Click to jump to top of pageClick to jump to parent topicIntermediate Page

The Intermediate Page specifies a web document where a respondent enters information and then submits the information. This action works similarly to the Landing Page except that it is not an entry point into the dialog.

The Intermediate Page specifies that the respondent is to enter data in the web page and then click the Submit button on the page. Based on the respondent’s input, you can have the flow make a decision on the next action to take. When you add this action to your flow, an icon labeled On Submit is added below the Intermediate Page icon, indicating that the steps below it will occur as a result of a submit from a respondent.

Click to jump to top of pageClick to jump to parent topicFinal Page

The Final Page action specifies a web document to be displayed to a respondent during the dialog. This action works like a Standalone Web Page as it does not accept input from the user, except that this page always follows an On Submit in the dialog flow.

Although there is no submit button on a Final Page, you can include a web link in the web document to take respondents to another part of the dialog, or another dialog. You do this by inserting a Web Link into the document in the Documents Designer.

There is one tab in the Final Page builder. The General tab is where you select the web document to be displayed. You should also provide an appropriate unique name for the action and a description.

Using Final Pages in Flows

Normal execution of actions are as follows:

The exception to the normal dialog flow is the Final Page action. When the flow reaches a Final Page action, rather than simply displaying the specified web document, Online Marketing marks the web document to be shown, and then continues processing subsequent actions until it reaches the end of the flow. If another Final Page exists, only the document associated with the last Final Page action Online Marketing encounters in the flow without additional input from the respondent is then shown.

Click to jump to top of pageClick to jump to parent topicSingle Email

The Single Email action specifies an email message to be sent to a specific individual. A single email can be sent as a reply to a respondent, or to notify a specific individual that a certain event has occurred (such as a respondent’s request for a representative to call).

You can specify recipient options, timing options (when to send the email) and queue management options for single emails.

Click to jump to top of pageClick to jump to parent topicDecision Point

The Decision Point action allows Online Marketing to check for a specific condition and perform an action based on the result. A typical use of this action is to check whether the respondent has filled in a particular value in a field of the web document. For example, you can specify that if a certain selection is made from a multiple choice list on a web page, a certain web page is to be shown.

A Decision Point action can only be placed in a flow following a web page with a submit button (Landing Page or Intermediate Page). You can place just about any type of action after this action (except a Landing Page or Standalone Web Page). Actions under the Yes branch are performed when the condition is met, and actions under the No branch are performed when the condition is not met.

Click to jump to top of pageClick to jump to parent topicUpdate Profile

The Update Profile action allows you to update the value of any profile attribute with data from an element in a web document, data from another profile attribute, or data that you explicitly specify.

Online Marketing keeps track of all data entered in web documents in order to display the data in CRM Analytics or Dialog Performance Reports. However, no profile attributes are modified unless they are explicitly used in a web document, or you use the Update Profile action.

The Update Profile action serves four basic uses:

Note. The Basic Organization profile attributes cannot be modified using Update Profile.