Reach the Right Audience: Integrating Audience Targeting with your Apps

Liferay Developer Conference (aka DEVCON) is a great chance for us to meet Liferay developers from all around the world every year. As for the last months we’ve been working on the new version of Audience Targeting, Julio and I very willingly proposed a talk about its new features and how to use them to integrate your apps with it. 
 
But preparing the talk turned out to be more difficult than we expected. Though our goal was clear (we want to have more and more developers creating cool stuff with Audience Targeting), we weren’t sure about how to transmit our message to the attendees.  For sure most of them will be techy guys, but what about the other profiles? And Audience Targeting is quite new… what will they know about it? Have they ever used it? Do they actually know it? 
 
If only we had a way to reach the right audience with the right message to meet our goal… Oh, but wait a minute… This is exactly what Audience Targeting is for  cool!

 

Introducing Audience Targeting (for beginners)

In a very simplistic approach, you can think of Audience Targeting as a machine that helps you to move users from an status to another, in order to reach a certain goal. For instance, if you don’t know anything about Audience Targeting, your initial status would be “Beginner”, and your final status should be “Expert”. Of course the information you’d get would be adapted to your level. If you progress well, your status might upgrade to “Intermediate”, “Advanced”…
Audience Targeting - Machine Approach
Now think about the possibilities of such a machine built on top of a powerful enterprise-oriented platform like Liferay Portal. By exploiting Liferay user’s information (e.g. profile, roles) and context (e.g. session attributes), you can use Audience Targeting out-of-the-box to increase your sales, improve your product awareness or enhance your customer loyalty. 

 

More than a Developer Friendly Application

So far it sounds great for marketers and salesmen, but what offers you Audience Targeting as a developer? Well, the question should be “What doesn’t it offer you”… Audience Targeting leverages Liferay’s OSGi support to provide a completely modular architecture. The application is made up of more than 40 modules, most of which can be hot-switch off or replaced. And if those modules are not enough for you, Audience Targeting provides you with an SDK to create your own modules and extend its features.
 
But even the best applications can’t do everything on their own. And when it comes to matters like user segmentation or digital marketing, integration with 3rd party apps is really a must. This is precisely one of the areas in which we have been working more intensively for version 2.0, and the main topic of our talk.
Audience Targeting - Modularity, Extensibility and Integrability

Audience Targeting Integration Points

To understand the integration capabilities of Audience Targeting, let’s take a look inside the machine and see how it works.
The first stage in the user processing is classification. Based on certain rules, users are classified into one or more user segments. Rules make use of Liferay information (such as user’s attributes) or session information (such as current location), but they can also consume external data sources providing a very powerful integration mechanism. For instance, we could classify the attendees to our talk with a rule that queries GitHub API and finds out who forked our repository and who contributed it.
Once your users are classified, you can send them information that fits their needs. This content targeting phase is perfomed with campaigns and promotions through different channels. A channel could be a Liferay portlet (e.g. displaying certain content on the home page based on the user segment) or a external system through which you can deliver your message to the users. What if we created a channel that integrates with your Agenda app and notifies the most relevant talks for your profile? Channels are another powerful integration tool that you’ll find in Audience Targeting 2.0. 
By monitoring users activity you can measure the performance of your campaigns and obtain very valuable information. For actions performed in the Liferay, Audience Targeting provides out-of-the-box mechanisms for tracking. But for those performed in external apps, you can generate custom metrics and reports that are integrated with the app monitoring systems. Twitter or Stack Overflow could be good sources to measure the impact of Audience Targeting with a custom report.
Audience Targeting - Iteration
But the story doesn’t end here. Actually, it hasn’t but started.Using  Audience Targeting is an iterative process where parts must be tuned in order to get the best performance.

 

And of course, the APIs

Rules, channels, metrics and reports are extension of Audience Targeting that provide integration points. But what if you want to extend your own app to integrate with Audience Targeting?
Audience Targeting provides an out-of-the-box API that gives you access to all the information about the existing user segments (including which users were last assigned to them), campaigns and analytics.
 
Audience Targeting - Core API
 
And yes, you’ve guessed it: these APIs can be extended! (we love extensions). Any rule, channel, metric or report can expose its own API to the world, making bi-directional integration simple. Actually, you have ever used Liferay Service Builder to generate consumible APIs, you already know how to do it with Audience Targeting.
 
Audience Targeting - Custom APIs

 

To be continued…

You might be wondering “And that’s all?” “Not a single code line?” “Where are the examples?”
 
 
Don’t worry. This is just the first of a series of entries where we’ll guide you on how to integrate Audience Targeting with external applications by different mechanisms. Stay tuned!
 
PS. If you just cannot wait (we understand), take a look to this entry by Abdon about Audience Targeting integration with Salesforce.

Plus d'entrées de blog

Blogues
Hi Eduardo, do you have an example of the metrics or a report?
Hi Cindy,

Examples for channels, reports/metrics and consumer manager extensions are coming up in next entries. We're planning to publish one every week. We'll also share the code in Github. Please stay tuned! emoticon

PS. In the meantime, you can check the available reports and metrics (a.k.a tracking actions) in our code repository.
Hi Eduardo,

We are looking for a Liferay portlet/plugin to support rolling out customer survey questions, and to hopefully do analytics/reporting.

This Audience Targeting application seems like a good framework to roll out something like surveys to customers.

Do you have any insight/comments about using Audience Targeting to carry out customer surveys?