Site Visitor Service: Turning John Doe to John Smith


With the introduction of WebCenter Sites 12c (WCS) came a new friend, the Site Visitor Service (SVS). Due to the increasing importance of providing a personalized experience, the management of visitor profiles in a website, has become a critical piece of the puzzle. 

Let’s get into it; what is SVS? SVS is not a CRM, nor is it replacing Engage. SVS is a separate web application deployed along with WCS that has its own database. SVS is a framework that provides an integration point to other modules or applications that manage visitor profiles. It is an API that standardizes the code to integrate visitor profile management into WCS irrespective of the back-end system or component that supports it.

The following diagram provides a high-level overview of SVS:

The following components comprise SVS:

Identity Provider:  This module authenticates the visitor upon log in. For anonymous visitors, an id can be generated to associate sessions to a visitor to capture and track their behavior for recommending content. 

Access Provider: This piece is responsible for protecting access to the SVS to authorized applications only. Without this piece, the SVS services can be accessed by any application. 

Profile Provider:  This component retrieves and returns the visitor’s profile data. Engage and the A/B Testing WCS modules use this in the content selection process.

Aggregation Template: This logic contains a mapping between the profile provider's (native) attributes and the names of the attributes as they will be exposed to WCS. It is written as either an Apache Velocity template or in JavaScript.

SVS ships with several providers that can be installed. These include Oracle Access Manager, LDAP Provider and Eloqua.  These can be installed via the Admin UI.  SVS also allows developers to create their own providers and define aggregation templates as needed.

One of the highlights of SVS's architecture is that it provides the capability for creating multiple profile providers and linking them. This is known as profile enrichment.  SVS provides this feature through an enrichment service that uses rules that are configured with each profile provider.  These rules define a mapping between an attribute of one profile provider with an attribute of a different profile provider. 

When using profile enrichment, SVS first retrieves the full profile data (known as the raw profile data) for a provider and stores that data in the SVS database.  Then SVS will process the enrichment rules for that provider and will request the raw data for any other providers defined in the rules.  If they are not already in SVS, they are retrieved and stored in SVS and then the providers are linked accordingly in the SVS database.  This is repeated until the enrichment rules have been processed for all providers. 

Aggregation templates can be written to retrieve different visitor profile attributes from different providers.  For example, an aggregation template can be written to retrieve name and age from the website profile, email and phone from the Eloqua provider, and interests through multiple providers - such as Facebook and Google.  SVS also supports multiple aggregation templates so that different sets of profile attributes can be used to segment visitors in different contexts.

In addition to profile enrichment, SVS also provides the ability to capture and store visitors’ actions and characteristics.  These are known as extended activities and extended attributes, respectively.  Extended attributes are available to SVS for profile enrichment (a separate profile called extended is created out-of-the-box to maintain these).  The visitor's locale, for example, can be an extended attribute.

When combining the profile enrichment and extended attribute capabilities with SVS’s ability to track anonymous visitors, it provides the capability to implicitly identify a visitor that has not explicitly logged in. For example, John Smith is a customer of Acme Computers and happens to be browsing their website looking at new laptops for his organization. He does not log in and is just browsing.  He sees a popup stating that if he is interested in pricing to leave his contact information and a representative will get back to him.  John leaves his email address. 

Meanwhile, SVS has been tracking the behavior of John as a John Doe i.e. an anonymous visitor. Once John enters his email address, SVS captures this but has a profile rule that maps this captured attribute to a different attribute on a CRM system. SVS will now pull the profile from the CRM which in turn may map to other profiles based on enrichment rules configured. 

Now Acme knows that John Doe is, in fact, John Smith, so as John continues to browse, the website will show offers or content that pertain to his needs and interests.  In this case, since Acme knows who John is and perhaps has access to his purchase history and other aspects of his profile, they may even be able to provide the pricing he needs (with incentives to complete a purchase) without the intervention of an agent.

In today’s social world people have numerous accounts, in addition to website- specific accounts, they have logins on numerous social media sites, search sites, and email accounts.  Each of these invariably captures some behavior or information about the visitor.  SVS empowers the business to take a holistic view of their visitors. With that view, the business can provide its customers more relevant, targeted content, and convert the John Does to John Smiths. 

Subscribe to Our Newsletter

Stay In Touch