Experience Optimization Session cartridge
The Session cartridge enables you to use session attributes as criteria for promotions in Experience Optimization to target users based on certain characteristics.
Cartridge function
The Session cartridge converts session attribute Claims into new Claims with a simplified Claim URI so that you can easily use these session attributes as criteria for promotions in Experience Optimization and target users based on certain characteristics. The session attributes added to the Claim Store are derived from HTTP request headers and session variables.
In addition to its core function of enabling triggers based on user session data, the Session cartridge can also serve as an example for you to follow and create your own custom cartridges.
Prerequisite Ambient Data Framework
Experience Optimization requires the Ambient Data Framework installed and configured as part of your Content Delivery installation for Tridion Sites. The Ambient Data Framework (ADF) is a Content Delivery module that provides a flexible and configurable framework for gathering and transforming website data, such as information about the website visitor and user session.
The framework allows you to program your own Claim Processors using the ADF Java API and organize them into cartridges that plug into the framework to implement specific functionality.
If you are a Tridion Sites Cloud customer, you can develop Claim Processors and cartridges and test them in your workspace. Once you are satisfied with them, you can deploy them in your production environment by contacting RWS Customer Support.
Claim Processor
The Claim Processor used in the session cartridge is packaged in the session_cartridge.jar. The Claim Processor converts the session attributes into Output Claims with simplified URIs. These Claim URIs are available through the SessionProcessor class where they are stored as the following constants:
- AUTHORIZATION_TYPE
- The authorization mechanism that is used for communication.
- AUTHORIZATION_IS_AUTHENTICATED
- Whether the user has been authenticated (they are who they claim to be).
- REFERER_DOMAIN
- The domain name of the referrer (String).
- SESSION_ID
- The ID of the user HTTP session (String).
- SESSION_CREATION_TIMESTAMP
- The timestamp when the session was created (long).
- SESSION_LIFETIME
- The maximum duration of the session in minutes (integer).
- USER_AGENT_BROWSER
- The Web browser used when making the HTTP request.
- USER_AGENT_BROWSER_VERSION
- The version of the web browser used when making the HTTP request (String).
- USER_AGENT_ISBOT
- Whether the client application making the request is a web robot.
- USER_AGENT_OS
- The operating system used by the client application making the HTTP request.
- USER_AGENT_OS_VERSION
- The version of the operating system used when making the HTTP request (String).
Cartridge XML file
The session cartridge XML file session_cartridge_conf.xml links the session cartridge together and specifies the Input and Output Claims for each processor. The session_cartridge_conf.xml is packaged in the session_cartridge.jar and is preconfigured in the Ambient Data Framework cd_ambient_conf.xml configuration file.