12.4 Design a trigger-based Customer Journey

In this exercise, you’ll create an orchestrated journey by making use of Journey Orchestration in combination with Adobe Experience Platform.

Go to https://experience.adobe.com/

You’ll see the Adobe Experience Cloud homepage.

Demo

Click on Journey Orchestration.

Demo

Next, you’ll see the Journey Orchestration homepage, which shows all existing Journeys.

Demo

Click Create to start creating your Journey.

Demo

You’ll then see a new, blank Journey.

Demo

You should first name your Journey.

As a Name for the Journey, use Geofence Entry Journey LDAP and replace LDAP with LDAP. In this example, the Journey Name is Geofence Entry Journey vangeluw. No other values must be set at this moment.

Demo

Click OK.

Demo

On the left side of your screen, have a look at Events. You should see your previously create Event in that list. Select it, then drag and drop it on the Journey Canvas.

Demo

Your Journey then looks like this:

Demo

Next, click on Orchestration.

Demo

You now see Orchestration capabilities.

Demo

Select Condition, then drag and drop it on the Journey Canvas.

Demo

You now have to define three conditions:

  • It’s colder than 10° Celsius
  • It’s between 10° and 25° Celsius
  • It’s warmer than 25° Celsius

Let’s define the first condition.

Condition 1: Colder than 10° Celsius

Click on the Condition.

Demo

Click on the Edit icon for the expression of Path1.

Demo

You’ll then see an empty Simple Editor screen.

Demo

Our query will be a bit more advanced, so we’ll need the Advanced Mode.
Click Advanced Mode.

Demo

You’ll then see the Advanced Editor which allows code entry.

Demo

Select the below code and paste it in the Advanced Editor.

#{weatherApiLdap.WeatherByCityLdap.main.temp} <= 10 (replace Ldap by your LDAP)

You’ll then see this.

Demo

In order to retrieve the temperature as part of this Condition, you need to provide the city in which the customer currently is.
The City needs to be linked to the dynamic parameter q, just like we saw previously in the Open Weather API Documentation.

Click the field dynamic val: q as indicated in the screenshot.

Demo

You then need to find the field that contains the current city of the customer in one of the available Data Sources.

Demo

You can find the field by navigating to geofenceEntryLdap.--aepTenantId--.locationService.currentPoiCity (replace Ldap by your LDAP).

By clicking that field, it will be added as the dynamic value for the parameter q. This field will be populated by for instance the geolocation-service that you’ve implemented in your Mobile App.

Demo

Click OK.

Demo

Next, we’ll add the 2nd condition.

Condition 2: Between 10° and 25° Celsius

After having added the first condition, you’ll see this screen.

Demo

Click Add Path.

Demo

Click on the Edit icon for the expression of Path2.

Demo

You’ll then see an empty Simple Editor screen.

Demo

Our query will be a bit more advanced, so we’ll need the Advanced Mode.
Click Advanced Mode.

Demo

You’ll then see the Advanced Editor which allows code entry.

Demo

Select the below code and paste it in the Advanced Editor.

#{weatherApiLdap.WeatherByCityLdap.main.temp} > 10 and #{weatherApiLdap.WeatherByCityLdap.main.temp} <= 25 (Replace Ldap by your LDAP)

You’ll then see this.

Demo

In order to retrieve the temperature as part of this Condition, you need to provide the city in which the customer currently is.
The City needs to be linked to the dynamic parameter q, just like we saw previously in the Open Weather API Documentation.

Click the field dynamic val: q as indicated in the screenshot.

Demo

You then need to find the field that contains the current city of the customer in one of the available Data Sources.

Demo

You can find the field by navigating to geofenceEntryLdap.--aepTenantId--.locationService.currentPoiCity (Replace Ldap by your LDAP). By clicking that field, it will be added as the dynamic value for the parameter q. This field will be populated by for instance the geolocation-service that you’ve implemented in your Mobile App.

Demo

Click OK.

Demo

Next, we’ll add the 3rd condition.

Condition 3: Warmer than 25° Celsius

After having added the second condition, you’ll see this screen.

Demo

Click Add Path.

Demo

Click on the Edit icon for the expression of Path3.

Demo

You’ll then see an empty Simple Editor screen.

Demo

Our query will be a bit more advanced, so we’ll need the Advanced Mode.
Click Advanced Mode.

Demo

You’ll then see the Advanced Editor which allows code entry.

Demo

Select the below code and paste it in the Advanced Editor.

#{weatherApiLdap.WeatherByCityLdap.main.temp} > 25 (Replace Ldap by your LDAP)

You’ll then see this.

Demo

In order to retrieve the temperature as part of this Condition, you need to provide the city in which the customer currently is.
The City needs to be linked to the dynamic parameter q, just like we saw previously in the Open Weather API Documentation.

Click the field dynamic val: q as indicated in the screenshot.

Demo

You then need to find the field that contains the current city of the customer in one of the available Data Sources.

Demo

You can find the field by navigating to geofenceEntryLdap.--aepTenantId--.locationService.currentPoiCity. By clicking that field, it will be added as the dynamic value for the parameter q. This field will be populated by for instance the geolocation-service that you’ve implemented in your Mobile App.

Demo

Click OK.

Demo

You now have three configured paths.

Demo

As this is a journey for learning purpose, we’ll now configure a couple of actions to showcase the variety of options marketeers now have to deliver messages.

Path 1

For each of the temperature contexts, we’ll attempt to send an SMS Message to our customer. We can only send an SMS if we have a Mobile Number available for a customer, so we’ll first have to verify that we do.

Let’s focus on Path1.

Demo

Let’s take another Condition element and drag it as indicated in the screenshot above. We’ll verify if for this customer, we have a mobile number available.

Demo

Click on the Edit icon for the Expression for Path1.

Demo

In the Data Sources, navigate to ExperiencePlatform.ProfileFieldGroup.profile.mobilePhone.number. You’re now reading the mobile phone number directly from Adobe Experience Platform’s Real-time Customer Profile.

Demo

Select the field Number, then drag and drop it to the Condition Canvas.

Select the operator is not empty.

Demo

Click Accept.

Demo

You’ll then see this:

Demo

Click OK.

Demo

Your Journey will then look like this. Click on Actions as indicated in the screenshot.

Demo

Select the smsTwilioLdap - action (verify your LDAP), then drag and drop it after the condition you just added.

Demo

You’ll see a popup.

Demo

Navigate to the Action Parameters.

Demo

Click on the Edit icon for the Action Parameter TEXTMESSAGE.

Demo

In the popup you’ll see, click on Advanced Mode.

Demo

Select the below code, copy it and paste it in the Advanced Mode Editor.

"Brrrr..." + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + " It's freezing. 20% discount on Jackets today!"

Demo

Click OK.

Click on the Edit icon for the Action Parameter MOBILENR.

Demo

You’ll see a popup with the Simple Mode Editor.

Demo

In the popup you’ll see, click on Advanced Mode.

Demo

Paste this code in the Advanced Mode Editor. Click OK.

substr(#{ExperiencePlatform.ProfileFieldGroup.profile.mobilePhone.number}, 0, 12)

FYI: This code is intended to work with mobile phone numbers that have 12 digits (including the +), like this one: +32463622044.
Several other countries have 13-digit phone numbers. If your mobile phone number has 13 digits (including the +), you need to update this code to:

substr(#{ExperiencePlatformDataSource.ProfileFieldGroup.profile.mobilePhone.number}, 0, 13)

Demo

Click OK.

Demo

In the left menu, go back to Actions, select the Action textSlackLdap, then drag and drop it after the smsTwilioLdap-Action (Replace Ldap by your LDAP).

Demo

Go to Action Parameters and click the Edit icon for the parameter TEXTTOSLACK.

Demo

In the popup-window, click Advanced Mode.

Demo

Select the below code, copy it and paste it in the Advanced Mode Editor.

"Brrrr..." + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + " It's freezing. 20% discount on Jackets today!"

Demo

Click OK.

Demo

Click OK.

Demo

In the left menu, go to Orchestration, select End, then drag and drop End after the textSlackLdap action.

Demo

Path 2

For each of the temperature contexts, we’ll attempt to send an SMS Message to our customer. We can only send an SMS if we have a Mobile Number available for a customer, so we’ll first have to verify that we do.

Let’s focus on Path2.

Demo

Let’s take another Condition element and drag it as indicated in the screenshot above. We’ll verify if for this customer, we have a mobile number available.

Demo

Click on the Edit icon for the Expression for Path1.

Demo

In the Data Sources, navigate to ExperiencePlatform.ProfileFieldGroup.profile.mobilePhone.number. You’re now reading the mobile phone number directly from Adobe Experience Platform’s Real-time Customer Profile.

Demo

Select the field Number, then drag and drop it to the Condition Canvas.

Select the operator is not empty.

Demo

Click Accept.

Demo

You’ll then see this:

Demo

Click OK.

Demo

Your Journey will then look like this. Click on Actions as indicated in the screenshot.

Demo

Select the smsTwilioLdap - action (verify your LDAP), then drag and drop it after the condition you just added.

Demo

You’ll see a popup.

Demo

Navigate to the Action Parameters.

Demo

Click on the Edit icon for the Action Parameter TEXTMESSAGE.

Demo

In the popup you’ll see, click on Advanced Mode.

Select the below code, copy it and paste it in the Advanced Mode Editor.

"What a nice spring weather, " + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + " 20% discount on Sweaters today!"

Demo

Click OK.

Click on the Edit icon for the Action Parameter MOBILENR.

Demo

You’ll see a popup with the Simple Mode Editor.

Demo

In the popup you’ll see, click on Advanced Mode.

Demo

Paste this code in the Advanced Mode Editor. Click OK.

substr(#{ExperiencePlatform.ProfileFieldGroup.profile.mobilePhone.number}, 0, 12)

FYI: This code is intended to work with mobile phone numbers that have 12 digits (including the +), like this one: **+32463622044`.
Several other countries have 13-digit phone numbers. If your mobile phone number has 13 digits (including the +), you need to update this code to:

substr(#{ExperiencePlatform.ProfileFieldGroup.profile.mobilePhone.number}, 0, 13)

Demo

Click OK.

Demo

In the left menu, go back to Actions, select the action textSlackLdap, then drag and drop it after the smsTwilioLdap action. (Replace Ldap by your LDAP)

Demo

Go to Action Parameters and click the Edit icon for the parameter TEXTTOSLACK.

Demo

In the popup window, click Advanced Mode.

Demo

Select the below code, copy it and paste it in the Advanced Mode Editor.

"What a nice spring weather, " + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + " 20% discount on Sweaters today!"

Demo

Click OK.

Demo

Click OK.

Demo

In the left menu, go to Orchestration, select End, then drag and drop End after the textSlackLdap action.

Demo

Path 3

For each of the temperature contexts, we’ll attempt to send an SMS Message to our customer. We can only send an SMS if we have a Mobile Number available for a customer, so we’ll first have to verify that we do.

Let’s focus on Path3.

Demo

Let’s take another Condition element and drag it as indicated in the screenshot above. We’ll verify if for this customer, we have a mobile number available.

Demo

Click on the Edit icon for the Expression for Path3.

Demo

In the Data Sources, navigate to ExperiencePlatform.ProfileFieldGroup.profile.mobilePhone.number. You’re now reading the mobile phone number directly from Adobe Experience Platform’s Real-time Customer Profile.

Demo

Select the field Number, then drag and drop it to the Condition Canvas.

Select the operator is not empty.

Demo

Click Accept.

Demo

You’ll then see this:

Demo

Click OK.

Demo

Your Journey will then look like this. Click on Actions as indicated in the screenshot.

Demo

Select the smsTwilioLdap - action (verify your LDAP), then drag and drop it after the condition you just added.

Demo

You’ll see a popup.

Demo

Navigate to the Action Parameters.

Demo

Click on the Edit icon for the Action Parameter TEXTMESSAGE.

Demo

In the popup you’ll see, click on Advanced Mode.

Select the below code, copy it and paste it in the Advanced Mode Editor.

"So warm, " + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + "! 20% discount on Swimming Trunks today!"

Demo

Click OK.

Click on the Edit icon for the Action Parameter MOBILENR.

Demo

You’ll see a popup with the Simple Mode Editor.

Demo

In the popup you’ll see, click on Advanced Mode.

Demo

Paste this code in the Advanced Mode Editor. Click OK.

substr(#{ExperiencePlatform.ProfileFieldGroup.profile.mobilePhone.number}, 0, 12)

FYI: this code is intended to work with mobile phone numbers that have 12 digits (including the +), like this one: +32463622044.
Several other countries have 13-digit phone numbers. If your mobile phone number has 13 digits (including the +), you need to update this code to:

substr(#{ExperiencePlatform.ProfileFieldGroup.profile.mobilePhone.number}, 0, 13)

Demo

Click OK.

Demo

In the left menu, go back to Actions, select the action textSlackLdap, then drag and drop it after the smsTwilioLdap action.

Demo

Go to Action Parameters and click the Edit icon for the parameter TEXTTOSLACK.

Demo

In the popup-window, click Advanced Mode.

Demo

Select the below code, copy it and paste it in the Advanced Mode Editor.

"So warm, " + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + "! 20% discount on Swimming Trunks today!"

Demo

Click OK.

Demo

Click OK.

Demo

In the left menu, go to Orchestration, select End, then drag and drop End after the textSlackLdap action.

Demo

Your Journey is now fully configured.

Demo

Click Publish.

Demo

Click Publish.

Demo

Your Journey is now published.

Demo

In the next exercise, you’ll be able to test your Journey.

Next Step: 12.5 Trigger your Orchestrated Customer Journey

Go Back to Module 12

Go Back to All Modules

On this page