Client Context
- Topics:
- Administering
CREATED FOR:
- Admin
The Client Context is a mechanism that provides you with certain information about the current page and visitor. It can be opened using Ctrl-Alt-c (windows) or control-option-c (Mac):
In both the publish and author environment it shows information about:
- The visitor; depending on your instance certain information is requested, or derived.
- Page tags and the number of times that these tags have been accessed by the current visitor (this is shown when you move the mouse over a specific tag) .
- Page information.
- Information about the technical environment; such as the IP address, browser and screen resolution.
- Any segments that are currently resolved.
The icons (only available in the author environment) allow you to configure the details of the client context:
-
Edit
A new page will open allowing you to edit, add or remove a profile property. -
Load
You can select from a list of profiles and load the profile you want to test. -
Reset
You can reset the profile to that of the current user.
Available Client Context Components
The Client Context can show the following properties (depending on what has been selected using Edit):
Surfer Information Shows the following client-side information:
- the IP address
- keywords used for search engine referral
- the browser being used
- the OS (operating system) being used
- the screen resolution
- the mouse X position
- the mouse Y position
Activity Stream This provides information about the social activity of the user on various platforms; for example, the AEM forums, blogs, ratings, etc.
Campaign Allows authors to simulate a specific experience for a campaign. This component overrides normal campaign resolution and experience selection to enabled the testing of various permutations.
Campaign resolution is normally based on the priority property of the campaign. The experience is normally selected based on segmentation.
Cart Shows shopping cart information including product entries (title, quantity, priceFormatted, etc.), resolved promotions (title, message, etc.) and vouchers (code, description, etc.).
The cart session store also notifies the server about resolved promotion changes (based on segmentation changes) using the ClientContextCartServlet.
Generic Store Is a generic component that displays the content of a store. It is a lower-level version of the Generic Store Properties component.
The Generic Store must be configured with a JS renderer that will display the data in a custom manner.
Generic Store Properties Is a generic component that displays the content of a store. It is a higher-level version of the Generic Store component.
The Generic Store Properties component includes a default renderer that lists the configured properties (together with a thumbnail).
Geolocation Shows the latitude and longitude of the client. It uses the HTML5 geolocation API to query the browser for the current location. This results in a popup being shown to the visitor, where the browser asks them if they agree to sharing their location.
When displayed in the Context Cloud, the component uses a Google API to display a map as thumbnail. The component is subject to the Google API usage limits.
JSONP Store A component that displays content that is dependent on your installation.
The JSONP standard is a complement to JSON that allows the circumvention of the same origin policy (making it impossible for a web app to communicate with servers that are on another domain). It consists in wrapping the JSON object in a function call in order to be able load it as a from the other domain (which is an allowed exception to the same origin policy).
The JSONP Store is like any other store, but it loads information that comes from another domain without the need of having a proxy for that information on the current domain. See the example in Storing Data in Client Context Via JSONP.
Profile Data Shows information collected in the user profile. For example, gender, age, email address, amongst others.
Resolved segments Shows which segments currently resolve (often dependent on other information shown in the client context). This is of interest when configuring a campaign.
For example, whether the mouse is currently over the left or right hand portion of the window. This segment is primarily used for testing as changes can be seen immediately.
Social Graph Shows the social graph of the user’s friends and followers.
/home/users/geometrixx/aparker@geometrixx.info/profile
=> friends propertyTag Cloud Shows tags set on the current page and those gathered while surfing the site. Moving the mouse over a tag shows the number of times that the current user has accessed pages holding that specific tag.
Technographics Store This component is dependent on your installation.
ViewedProducts Keeps track of products the shopper has viewed. Can be queried for the most-recently-viewed product, or the most-recently-viewed product which is not already in the cart.
This session store has no default client context component.
For additional information, see Client Context in Detail.
pagedata
.Changing the Client Context Profile
The Client Context allows you to interactively change details:
- Changing the profile being used in the Client Context allows you to see the differing experiences that the various user will see for the current page.
- As well as changing the user profile you can change some profile details to see how the page experience differs under various conditions.
Loading a New User Profile
You can change the profile by either:
When finished you can reset the profile.
Loading a New Visitor Profile with the Load Profile Icon
-
Click the Load Profile icon:
-
This will open the dialog, here you can select the profile you want to load:
-
Click OK to load.
Loading a New User Profile with the Selection Slider
You can also select a profile with the selection slider:
-
Double-click on the icon representing the current user. The selector will open, use the arrows to navigate and see the profiles available:
-
Click on the profile you want to load. When the details have loaded click outside the selector to close.
Resetting the Profile to the Current User
-
Use the reset icon to return the profile in the Client Context to that of the current user:
Changing the Browser Platform
-
Double-click on the icon representing the browser platform. The selector will open, use the arrows to navigate and see the platforms/browsers available:
-
Click on the platform browser you want to load. When the details have loaded click outside the selector to close.
Changing the Geolocation
-
Double-click on the geolocation icon. An expanded map will open, here you can drag the marker to a new location:
-
Click outside the map to close.
Changing the Tag Selection
-
Double-click on the Tag Cloud section of the Client Context. The dialog will open, here you can select tags:
-
Click OK to load into the Client Context.
Editing the Client Context
Editing a client context can be used to set (or reset) the values of certain properties, add a new property or remove one that is no longer needed.
Editing Property Details
Editing a client context can be used to set (or reset) the values of certain properties. This allows you to test specific scenarios (particularly useful for segmentation and campaigns).
Adding a Property Component
After you have opened the ClientContext design page, you can also Add a completely new property using the available components (the components are listed on both the sidekick or from the Insert New Component dialog that is opened after a double-click on the Drag components or assets here box):
Removing a Property Component
After you have opened the ClientContext design page, you can also Remove a property if no longer required. This includes properties supplied out-of-the-box; Reset will reinstate these if they have been removed.
Storing Data in Client Context Via JSONP
Follow this example to use the JSONP Store context store component to add external data to Client Context. Then, create a segment based on the information from that data. The example uses the JSONP service that WIPmania.com provides. The service returns geolocation information based on the IP address of the web client.
This example uses the Geometrixx Outdoors sample website to access Client Context and to test the created segment. You can use a different web site as long as the page has enabled Client Context. (See Adding Client Context To a Page.)
Add the JSONP Store Component
Add the JSONP Store component to Client Context and use it to retrieve and store geolocation information about the web client.
-
Open the English home page of the Geometrixx Outdoors site on the AEM author instance. (http://localhost:4502/content/geometrixx-outdoors/en.html).
-
To open Client Context, press Ctrl-Alt-c (windows) or control-option-c (Mac).
-
Click the edit icon at the top of Client Context to open Client Context Designer.
-
Drag the JSONP Store component to Client Context.
-
Double-click the component to open the edit dialog.
-
In the JSONP Service URL box, enter the following URL, and then click Fetch Store:
https://api.wipmania.com/jsonp?callback=${callback}
The component calls the JSONP service and lists all of the properties that the returned data contains. The properties that are in the list are those that will be available in Client Context.
-
Click OK.
-
Return to the Geometrixx Outdoors home page and refresh the page. Client Context now includes the information from the JSONP Store component.
Create the Segment
Use the data from the session store that you created using the JSONP store component. The segment uses the latitude from the session store and the current date to determine whether it is winter time at the client’s location.
-
Open the Tools console in your web browser (http://localhost:4502/miscadmin#/etc).
-
In the folder tree, click the Tools/Segmentation folder, and then click New > New Folder. Specify the following property values and then click Create:
- Name: mysegments
- Title: My Segments
-
Select the My Segments folder and click New > New Page:
- For the Title, type Winter.
- Select the Segment template.
- Click Create.
-
Right-click the Winter segment and click Open.
-
Drag the Generic Store Property to the default AND container.
-
Double-click the component to open the edit dialog, specify the following property values, and then click OK:
- Store: wipmania
- Property Name: latitude
- Operator: is greater than
- Property Value: 30
-
Drag the Script component to the same AND container, and open its edit dialog. Add the following script and then click OK:
3 < new Date().getMonth() < 12
Experience Manager
- Administering User Guide overview
- Sites Features
- Website Administration
- Reusing Content: Multi Site Manager and Live Copy
- Live Copy Overview Console
- Configuring Live Copy Synchronization
- Creating and Synchronizing Live Copies
- MSM Rollout Conflicts
- MSM Best Practices
- Translating Content for Multilingual Sites
- Managing Translation Projects
- Identifying Content to Translate
- Preparing Content for Translation
- Creating a Language Root Using the Classic UI
- Connecting to Microsoft Translator
- Configuring the Translation Integration Framework
- Language Copy Wizard
- Translation Enhancements
- Translation Best Practices
- Configurations and the Configuration Browser
- AEM FAQs
- Operations
- Dashboards
- Operations Dashboard
- Backup and Restore
- Data Store Garbage Collection
- Monitoring Server Resources Using the JMX Console
- Working with Logs
- Configure the Rich Text Editor
- Configure the Video component
- The Bulk Editor
- Configuring Email Notification
- Configuring RTE for Producing Accessible Sites
- The Link Checker
- Troubleshooting AEM
- Audit Log Maintenance in AEM 6
- Editor
- Managing Access to Workflows
- Using cURL with AEM
- Configuring Undo for Page Editing
- Proxy Server Tool (proxy.jar)
- Configuring for AEM Apps
- Administering Workflows
- Configuring Search Forms
- Tools Consoles
- Reporting
- Administering Workflow Instances
- Configuring Layout Container and Layout Mode
- Enabling Access to Classic UI
- Starting Workflows
- Configure the Rich Text Editor plug-ins
- Admin Consoles
- Security
- User Administration and Security
- User, Group and Access Rights Administration
- Security Checklist
- OWASP Top 10
- Running AEM in Production Ready Mode
- Identity Management
- Adobe IMS Authentication and Admin Console Support for AEM Managed Services
- Creating a Closed User Group
- Mitigating serialization issues in AEM
- User Synchronization
- Encapsulated Token Support
- Single Sign On
- How to Audit User Management Operations in AEM
- SSL By Default
- SAML 2.0 Authentication Handler
- Closed User Groups in AEM
- Granite Operations - User and Group Administration
- Enabling CRXDE Lite in AEM
- Configuring LDAP with AEM 6
- Configure the Admin Password on Installation
- Service Users in AEM
- Encryption Support for Configuration Properties
- Handling GDPR Requests for the AEM Foundation
- Content Disposition Filter
- Personalization
- eCommerce
- Integration
- Integrating with Third-Party Services
- Integrating with Salesforce
- Integrating with Adobe Target
- Integrating with Adobe Analytics
- Connecting to Adobe Analytics and Creating Frameworks
- Configuring Link Tracking for Adobe Analytics
- Mapping Component Data with Adobe Analytics Properties
- Configuring Video Tracking for Adobe Analytics
- HTTP2 Delivery of Content FAQ
- Troubleshooting your Adobe Campaign Integration
- SharePoint Connector Licenses, Copyright Notices, and Disclaimers
- SharePoint Connector
- DHTML Viewer End-of-Life FAQs
- Integrating with Adobe Campaign Classic
- Related Community Articles
- Integrating with Adobe Campaign Standard
- Flash Viewers End-of-Life Notice
- Integrating with Adobe Creative Cloud
- Integrating with Adobe Dynamic Tag Management
- Opting Into Adobe Analytics and Adobe Target
- AEM Portals and Portlets
- Integrating with Dynamic Media Classic
- Troubleshooting Integration Issues
- Integrating with BrightEdge Content Optimizer
- Best Practices for Email Templates
- Catalog Producer
- Integrating with Silverpop Engage
- Integrating with Adobe Campaign
- Integrating with ExactTarget
- Analytics with External Providers
- Integrating with the Adobe Marketing Cloud
- Manually Configuring the Integration with Adobe Target
- Prerequisites for Integrating with Adobe Target
- Adobe Classifications
- Solutions Integration
- Target Integration with Experience Fragments
- Best Practices
- Content Management