Latest Posts

Archives [+]

    Posted by Kas Thomas SEP 09, 2011

    Comments 11

    Last time, I reviewed the basics of the powerful Clickstream Cloud feature of Adobe WEM (formerly CQ5), which is the feature whereby, if you type Ctrl-Alt-C, you get a popup summary of various bits of contextual information about the user, the user's browser, and the page the user is currently visiting (see illustration further below).

    As with almost everything else in WEM, the Clickstream Cloud can be customized relatively easily, because the code for the Cloud is easily accessible (and modifiable) in the repository.

    If you go in the repository under /libs/cq/personalization/clientlib/source/shared (best done in CRXDE Lite: just aim your browser at http://localhost:4502/crx/de/index.jsp#/crx.default/jcr%3aroot/libs/cq/personalization/clientlib/source/shared), you'll see a half dozen *.js files that govern the Clickstream Cloud's basic behavior, and if you look under /libs/cq/personalization/clientlib/source/clickstreamcloud, you'll find the *.js files that contain code for the various session stores that manage the information fields displayed in the cloud dialog. There's also a js.txt file at /libs/cq/personalization/clientlib/js.txt that governs how all these *.js files are loaded.

    As a very simple example of customization of the Clickstream Cloud, let us suppose that you wanted to add a timestamp to the cloud dialog under "Surfer information" as shown below:

    Clickstream Cloud Dialog

    Notice the part, under Surfer Information, where it says "Thu Sep 08 2011 17:09:45," etc. This information was added as a result of custom code.

    There are a couple of ways to do this. One way would be to alter the setSurferInfoInitialData() function in config.json.jsp (which is located in a somewhat obscure place, namely /libs/cq/personalization/components/clickstreamcloud/command/config/). You might be very tempted to do this since that's the function where the user's IP address, for example (which appears under Surfer Information), is set. But making a change in this function would actually be a bad thing to do, for a number of reasons. First, you're dealing with a core WEM file. And you're making hard-coded changes to it. There's no guarantee that this file will stay unmodified (or even continue to exist) in future versions of WEM, and by putting custom code in it, you've created a maintenance nightmare.

    A better alternative is to create your own separate file, perhaps called custom.js, and place it under /libs/cq/personalization/clientlib/source/clickstreamcloud/. The content of custom.js is simply:
    CQ_Analytics.CCM.addListener("configloaded", function() {
                  CQ_Analytics.SurferInfoMgr.setProperty( "timestamp", new Date() );
     }, CQ_Analytics.SurferInfoMgr);

    To ensure that custom.js loads at runtime, you do need to make a change to the aforementioned js.txt file (namely, the one at /libs/cq/personalization/clientlib/js.txt). Just add the line "clickstreamcloud/custom.js" to the end of the file.

    Now you should be able to go to a new page (or reload the current page) in WEM, type Crtl-Alt-C, and see the timestamp information in the Surfer Information portion of the Clickstream Cloud dialog.

    What's neat is that if you now click the Edit link in the upper right portion of the Cloud dialog, then click the Surfer Information tab of the dialog that pops up, you'll see timestamp info among the editable fields of the dialog:


    For more information on the Clickstream Cloud API (including how you can create your own custom session store), see the documentation here.

    Posted by Kas Thomas AUG 25, 2011

    Comments 6

    Customer Experience Management (CEM) aims to empower and delight customers by (among other means) giving web visitors exactly the information they need, in the right form, at the right time. Doing this reliably, in real time, can be a challenge. It requires Web Content Management software that can aggregate relevant user information from a variety of sources so as to drive intelligent provisioning of content on a page according to predetermined strategies.

    Adobe's Web Experience Management offering (part of the new Adobe Digital Enterprise Platform) rises to this challenge with a patent-pending technology called the Clickstream Cloud.  

    The Clickstream Cloud represents a dynamically assembled collection of user data that can be used to determine exactly what content should be shown on a given web page, in a given situation.

    To see the Clickstream Cloud in operation, simply type Ctrl-Alt-C from within any web page. The Cloud summary toggles into view.


    A variety of types of information are shown for the given user:

    • Profile data typically shows the user's registration data (assuming the user has registered with the website): Name, e-mail address, occupation, age, mailing address, phone number, and any other information the user has previously submitted in a registration process. This could also include social network information, data pulled from a CRM system, etc.

    • Tag cloud data shows the tags that were of interest to this user. Mousing over any of the tag names causes a tooltip to appear, showing the number of times the user has accessed a particular tag.

    • Page data shows the number of times the page has been visited, the page's title, and the Random factor as used in the random strategy of a campaign.

    • Surfer info shows the IP address, keywords used for search engine referral, the browser being used, the OS (operating system) being used, the screen resolution of the device the visitor is using to view the web page, and the mouse X-Y position on the page.

    • Events shows activity-stream information from SiteCatalyst.

    • Resolved Segments shows which (if any) defined segments of a marketing campaign have been matched.

    Several things make Adobe's implementation of the Clickstream Cloud unique:

    1. Much of the information (such as info about the user's viewing environment) is derived on-the-fly, in real time.
    2. Marketers can experiment with different user-data values to see changes to a page in real time (for purposes of trying different campagin strategies). The Edit button in the upper right portion of the panel allows for manual editing (overriding) of user-data values.
    3. The Clickstream Cloud is extensible. You can add a new (custom) session-store object whose contents can be displayed in the panel.
    4. Non-volatile information shown in the Clickstream Cloud viewer is persisted on the client side (in a cookie), relieving the server of having to maintain (and then transport back and forth) large amounts of user data.

    Because user info is persisted on the client, concerns over privacy and control of potentially sensitive user data are easily allayed: The user has ultimate control over the data.

    The Clickstream Cloud is a container for different data stores (also called session stores), which extend either CQ_Analytics.SessionStore (for values computed on page load) or CQ_Analytics.PersistedSessionStore (for values persisted from one page to another).

    Each data store is built up of property pairs (names and corresponding values) and represents a logical collection of properties (for example, profile properties).

    The default session stores available in Adobe WEM can be obtained from a call to CQ_Analytics.ClickstreamcloudMgr.get(), which returns an object with properties of:

    profile (correponding to CQ_Analytics.ProfileDataMgr)

    eventdata (correponding to CQ_Analytics.EventDataMgr)

    tagcloud (correponding to CQ_Analytics.TagCloudMgr)

    pagedata (correponding to CQ_Analytics.PageDataMgr)

    surferinfo (correponding to CQ_Analytics.SurferInfoMgr)

    mouseposition (correponding to CQ_Analytics.MousePositionMgr)

    There's much more goodness tucked away in the Clickstream Cloud's APIs, which we'll visit in another (followup) blog post soon. But for now, if you want to get into the details yourself, there's no easier way to get started than to consult our documentation here and (for even more detail) here.

    Posted by Cedric Huesler AUG 15, 2011

    Comments 4

    Today we put the 60-day trial version of ADEP ready to download. Here a short summary what that means for folks with knowledge on CRX and CQ5.

    ADEP, or long "Adobe Digital Enterprise Platform" consists of two servers:

    The 1st is called Experience Services and is based on CRX 2.2. We packaged additional stuff into it, to make it the perfect companion for developers working with Adobe Flash Builder.

    The 2nd is Java EE based and is call Document Services and can be install into JBoss, WebSphere or WebLogic. It contains all the sweet PDF and process management stuff.

    Both servers work together - the CRX-based Experience Services has an OSGi service layer to transparently access functionality on the Document Services side - further can it be used as authentication source (similar to LDAP).

    On top of the two services we run Customer Experience Solutions. Among them is CQ5, with it's new name "Web Experience Management". The CQ release included in the solution package is based on CQ 5.4.

    What does that mean for you?

    No big news on the pure CRX and CQ5 front - but a lot of new stuff to discover and get familiar with, that is based on the technology you know.

    Mind that the Document Services install needs more resources than you are used to with CRX and CQ5. Further due to it's PDF conversion features it relies on native software being installed. I got best results using Windows Server 2008 R2 on a dedicated box. Make sure you check the system requirements and install steps for save guidance.

    With that - feel free to skip a meeting and install ADEP.

    Any question about pricing - please contact your favorite account manager.

    Posted by Cedric Huesler AUG 09, 2011

    Add comment

    Dan Alcalde and friends are organizing a meet-up in Washington, DC next week on August 17th. A great opportunity to get to know fellow community members in your area and share knowledge.

    Head over to for more details and sign-up.

    On that note: We have adaptTo(Berlin) and MAX and Enterprise Summit upcoming in the next few months. Don't miss to sign-up!

    Posted by Cedric Huesler AUG 03, 2011

    Add comment

    The Creative Suite team has released a new version of Adobe Drive this week. Adobe Drive connects the Creative Suite (Photoshop, Illustrator, InDesign...) with Digital Asset Management servers. This allows creative professionals to browse, search and edit assets directly in the DAM repository.

    Version 3 of Adobe Drive features out-of-the-box support to connect to CQ 5.4 instances and work with assets managed in the DAM.

    How does it work?

    • Download Adobe Drive (for Windows or Mac)
    • Install on computer where Creative Suite is installed (CS5 or 5.5)
    • Setup connection to CQ 5.4 author instance in Drive
    • Be productive!

    To learn more about the supported feature set - such as versioning, check-in/out and XMP editing - check out the documentation (PDF download) and Developer Center page.

    And yes.. it's free. Let us know what you think in the Adobe Drive user forum.