8.4 Create your journey and messages
Adobe Journey Optimizer - Configure and use the SMS channel within Adobe Journey Optimizer
Last updated
Adobe Journey Optimizer - Configure and use the SMS channel within Adobe Journey Optimizer
Last updated
In this exercise, you'll create a journey and several text messages by making use of Adobe Journey Optimizer.
For this use case, the goal is to send different SMS messages based on the weather conditions of the location of your customer. 3 scenarios have been defined:
Colder than 10° Celsius
Between 10° and 25° Celsius
Warmer than 25° Celsius
For these 3 conditions, you'll need to define 3 SMS messages in Adobe Journey Optimizer.
Login to Adobe Journey Optimizer by going to Adobe Experience Cloud. Click Journey Optimizer.
You'll be redirected to the Home view in Journey Optimizer. First, make sure you're using the correct sandbox. The sandbox to use is called --aepSandboxId--
. To change from one sandbox to another, click on PRODUCTION Prod (VA7) and select the sandbox from the list. In this example, the sandbox is named AEP Enablement FY22. You'll then be in the Home view of your sandbox --aepSandboxId--
.
In the left menu, go to Journeys and click Create Journey to start creating your Journey.
You should first name your journey.
As a Name for the journey, use --demoProfileLdap-- - Geofence Entry Journey
. In this example, the journey name is vangeluw - Geofence Entry Journey
. No other values must be set at this moment. Click OK.
On the left side of your screen, have a look at Events. You should see your previously created event in that list. Select it, then drag and drop it on the journey canvas. Your journey then looks like this. Click Ok.
Next, click on Orchestration. You now see the available Orchestration capabilities. Select Condition, then drag and drop it on the Journey Canvas.
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.
Click on the Condition. Click on Path1 and edit the name of the path to Colder than 10 C. Click on the Edit icon for the expression of Path1.
You'll then see an empty Simple Editor screen. Your query will be a bit more advanced, so you'll need the Advanced Mode. Click Advanced Mode.
You'll then see the Advanced Editor which allows code entry.
Select the below code and paste it in the Advanced Editor.
#{--demoProfileLdap--WeatherApi.--demoProfileLdap--WeatherByCity.main.temp} <= 10
You'll then see this.
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.
You then need to find the field that contains the current city of the customer in one of the available Data Sources.
You can find the field by navigating to --demoProfileLdap--GeofenceEntry.placeContext.geo.city
.
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. In our case we will simulate this with the admin console of the demo website. Click OK.
After having added the first condition, you'll see this screen. Click Add Path.
Double click on Path1 and edit the path name to Between 10 and 25 C. Click the Edit icon for the expression this path.
You'll then see an empty Simple Editor screen. Your query will be a bit more advanced, so you'll need the Advanced Mode. Click Advanced Mode.
You'll then see the Advanced Editor which allows code entry.
Select the below code and paste it in the Advanced Editor.
#{--demoProfileLdap--WeatherApi.--demoProfileLdap--WeatherByCity.main.temp} > 10 and #{--demoProfileLdap--WeatherApi.--demoProfileLdap--WeatherByCity.main.temp} <= 25
You'll then see this.
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.
You then need to find the field that contains the current city of the customer in one of the available Data Sources.
You can find the field by navigating to --demoProfileLdap--GeofenceEntry.placeContext.geo.city
. 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. In our case we will simulate this with the admin console of the demo website. Click OK.
Next, you'll add the 3rd condition.
After having added the second condition, you'll see this screen. Click Add Path.
Double click on Path1 to change the name to Warmer than 25 C. Then click on the Edit icon for the expression this path.
You'll then see an empty Simple Editor screen. Your query will be a bit more advanced, so you'll need the Advanced Mode. Click Advanced Mode.
You'll then see the Advanced Editor which allows code entry.
Select the below code and paste it in the Advanced Editor.
#{--demoProfileLdap--WeatherApi.--demoProfileLdap--WeatherByCity.main.temp} > 25
You'll then see this.
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.
You then need to find the field that contains the current city of the customer in one of the available Data Sources.
You can find the field by navigating to --demoProfileLdap--GeofenceEntry.placeContext.geo.city
. 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. In our case we will simulate this with the admin console of the demo website. Click OK.
You now have three configured paths. Click Ok.
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.
For each of the temperature contexts, we'll attempt to send a text message to our customer. We can only send a text message if we have a Mobile Number available for a customer, so we'll first have to verify that we do.
Let's focus on Colder than 10 C.
Let's take another Condition element and drag it as indicated in the screenshot below. We'll verify if for this customer, we have a mobile number available.
As this is just an example, we are only configuring the option where the customer has a mobile number available. Add a label of Has mobile?.
Click on the Edit icon for the Expression for the Path1 path.
In the Data Sources shown on the left, 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.
Select the field Number, then drag and drop it to the Condition Canvas.
Select the operator is not empty. Click Ok.
You'll then see this. Click OK again.
Your journey will then look like this. Click on Actions as indicated in the screenshot.
Select the action SMS, then drag and drop it after the condition you just added.
Set the Category to Marketing and select an SMS surface that enables you to send SMS. In this case, the email surface to select is SMS.
The next step is to create your message. To do that, click Edit content.
You now see the message dashboard, where you can configure the text of your SMS. Click the Compose message area to create your message.
Enter the following text: Brrrr... {{profile.person.name.firstName}}, it's freezing. 20% discount on jackets today!
. Click Save.
You'll then see this. Click the arrow in the top left corner to go back to your journey.
You'll then be back here. Click Ok.
In the left menu, go back to Actions, select the Action --demoProfileLdap--TextSlack
, then drag and drop it after the Message action.
Go to Action Parameters and click the Edit icon for the parameter TEXTTOSLACK
.
In the popup-window, click Advanced Mode.
Select the below code, copy it and paste it in the Advanced Mode Editor. Click Ok.
"Brrrr..." + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + " It's freezing. 20% discount on Jackets today!"
You will see your completed action. Click Ok.
This path of the journey is now ready.
For each of the temperature contexts, we'll attempt to send a text message to our customer. We can only send a text message if we have a Mobile Number available for a customer, so we'll first have to verify that we do.
Let's focus on Between 10 and 25 C path.
Let's take another Condition element and drag it as indicated in the screenshot below. We'll verify if for this customer, we have a mobile number available.
As this is just an example, we are only configuring the option where the customer has a mobile number available. Add a label of Has mobile?.
Click on the Edit icon for the Expression for the Path1 path.
In the Data Sources shown on the left, 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.
Select the field Number, then drag and drop it to the Condition Canvas.
Select the operator is not empty. Click Ok.
You'll then see this. Click Ok.
Your journey will then look like this. Click on Actions as indicated in the screenshot.
Select the action SMS, then drag and drop it after the condition you just added.
Set the Category to Marketing and select an SMS surface that enables you to send SMS. In this case, the email surface to select is SMS.
The next step is to create your message. To do that, click Edit content.
You now see the message dashboard, where you can configure the text of your SMS. Click the Compose message area to create your message.
Enter the following text: What a nice weather for the time of year, {{profile.person.name.firstName}} - 20% discount on Sweaters today!
. Click Save.
You'll then see this. Click the arrow in the top left corner to go back to your journey.
You'll now see your completed action. Click Ok.
In the left menu, go back to Actions, select the Action --demoProfileLdap--TextSlack
, then drag and drop it after the Message action.
Go to Action Parameters and click the Edit icon for the parameter TEXTTOSLACK
.
In the popup-window, click Advanced Mode.
Select the below code, copy it and paste it in the Advanced Mode Editor. Click Ok.
"What nice weather for the time of year, " + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + " 20% discount on Sweaters today!"
You will see your completed action. Click Ok.
This path of the journey is now ready.
For each of the temperature contexts, we'll attempt to send a text message to our customer. We can only send a text message if we have a Mobile Number available for a customer, so we'll first have to verify that we do.
Let's focus on Warmer than 25 C path.
Let's take another Condition element and drag it as indicated in the screenshot below. You'll verify if for this customer, you have a mobile number available.
As this is just an example, we are only configuring the option where the customer has a mobile number available. Add a label of Has mobile?.
Click on the Edit icon for the Expression for the Path1 path.
In the Data Sources shown on the left, 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.
Select the field Number, then drag and drop it to the Condition Canvas.
Select the operator is not empty. Click Ok.
You'll then see this. Click OK.
Your journey will then look like this. Click on Actions as indicated in the screenshot.
Select the action SMS, then drag and drop it after the condition you just added.
Set the Category to Marketing and select an SMS surface that enables you to send SMS. In this case, the email surface to select is SMS.
The next step is to create your message. To do that, click Edit content.
You now see the message dashboard, where you can configure the text of your SMS. Click the Compose message area to create your message.
Enter the following text: So warm, {{profile.person.name.firstName}}! 20% discount on swimwear today!
. Click Save.
You'll then see this. Click the arrow in the top left corner to go back to your journey.
You'll now see your completed action. Click Ok.
In the left menu, go back to Actions, select the Action --demoProfileLdap--TextSlack
, then drag and drop it after the Messages action.
Go to Action Parameters and click the Edit icon for the parameter TEXTTOSLACK
.
In the popup-window, click Advanced Mode.
Select the below code, copy it and paste it in the Advanced Mode Editor. Click Ok.
"So warm, " + #{ExperiencePlatform.ProfileFieldGroup.profile.person.name.firstName} + "! 20% discount on swimwear today!"
You will see your completed action. Click Ok.
This path of the journey is now ready.
Your journey is now fully configured. Click Publish.
Click Publish again.
Your journey is now published.