Touchpoint in HCL Connections 6.5CR1

by Christoph Stoettner
Read in about 3 min · (words)

Fountain pen and a notebook

Photo by Aaron Burden | Unsplash

HCL included some additional apps with HCL Connections 6.5CR1. One of them is Touchpoint, which can be used to present users the “Terms and Conditions” (or Privacy and Guidelines) of the environment and some help creating their profile, network and become member of their first communities.

Touchpoint writes some profile extension entries in the PEOPLEDB database in the table PROFILE_EXTENSIONS, most important:

  • touchpointState: stores the information if a user has completed Touchpoint and the timestamp of completion

  • privacyAndGuidelines: Version number of accepted Privacy Guidelines

Example

"PROF_KEY""PROF_PROPERTY_ID""PROF_VALUE"

"94caae68-8eb7-42fd-ac76-e04d4c0ab6bf"

touchpointState

"{""state"":""complete"",""timestamp"":1599817448000}"

"94caae68-8eb7-42fd-ac76-e04d4c0ab6bf"

privacyAndGuidelines

"2.1"

To activate touchpoint itself, you have to edit touchpoint-config.xml in the LotusConnections-config folder of your Websphere deployment.

Activate and Configure Touchpoint

<config id="touchpoint" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="touchpoint-config.xsd">
    <uiEnabled>true</uiEnabled>     
    <steps>
        <paths>
            <defaultPath>welcome,editProfile,profileTags,findColleagues,followCommunities</defaultPath>
            <icExternalPath>welcome,editProfile,profileTags</icExternalPath>
            <pagStandalone>pagStandalone</pagStandalone>
        </paths>
        <order>welcome,editProfile,profileTags,findColleagues,followCommunities</order>
        <welcome>
            <templateFile>templates/welcome.html</templateFile>
        </welcome>
    </steps>
    <privacyAndGuidelines>
        <enabled>true</enabled>     
        <version>2.1</version>      
        <externalLink>https://stoeps.de</externalLink>
        <internalLink>https://stoeps.de</internalLink>
    </privacyAndGuidelines>
    <maxPromotedExperts>3</maxPromotedExperts>
    <promotedExperts/>
    <maxPromotedCommunities>3</maxPromotedCommunities>
    <promotedCommunities/>
    <welcomeVideoUrl/>
    <contentDirectory>/opt/nfs/touchpoint/</contentDirectory>
    <orientMe>
        <enabled>false</enabled>
        <socialCtxRoot>/social</socialCtxRoot>
        <itmCtxRoot>/itm</itmCtxRoot>
    </orientMe>
</config>
  • Set to true to enable Touchpoint

  • Set to true to enable Privacy and Guidelines

  • Version number, increase to display the guidelines again

When you increase the PAG version and restart Touchpoint, the users get the PAG screen when they refresh or open a Connections page, or on the next login.

Touchpoint and Privacy and Guidelines (PAG) can be activated independently. So just Touchpoint, PAG standalone or both.

Within paths you can configure the shown pages for internal users, external users and PAG.

All configuration options in the official documentation: https://help.hcltechsw.com/connections/v65/admin/install/tp_r_touchpoint_config_properties.html

TDI caveats

The default TDI Assemblyline (tdisol-path/TDI/conf/LotusConnections-config/tdi-profiles-config.xml) has following entries since the touchpoint integration:

<simpleAttribute extensionId="privacyAndGuidelines" length="256" sourceKey="privacyAndGuidelines" />
<simpleAttribute extensionId="touchpointState" length="256" sourceKey="touchpointState" />
<richtextAttribute extensionId="touchpointSession" maxBytes="1000000" sourceKey="touchpointSession" />

What does this mean?

Everytime when you run sync_all_dns.sh|bat and a user profile is changed, the database extension entries (privacyAndGuidlines,touchpointState and touchpointSession) of all changed users will be overwritten and Touchpoint/PAG will be presented to these users over and over again, WHEN the LDAP doesn’t contain this attributes (and I bet it doesn’t).

As long as you just want to use PAG or Touchpoint, comment out these three lines to prevent getting Touchpoint over and over again.

Just comment out (all five lines of touchpoint extensions)

<!--
<simpleAttribute extensionId="recommendedTags" length="256" sourceKey="recommendedTags" />
<simpleAttribute extensionId="departmentKey" length="256" sourceKey="departmentKey" />
<simpleAttribute extensionId="privacyAndGuidelines" length="256" sourceKey="privacyAndGuidelines" />
<simpleAttribute extensionId="touchpointState" length="256" sourceKey="touchpointState" />
<richtextAttribute extensionId="touchpointSession" maxBytes="1000000" sourceKey="touchpointSession" />
-->

So these values are handled by Touchpoint and no longer set or overwritten by TDI.

Update

I forgot to mention, when you disable the fields in tdi-profiles-config.xml, you have to comment out the same fields in conf/LotusConnections-config/profiles-types.xml:

<!--
<property>
    <ref>recommendedTags</ref>
    <updatability>readwrite</updatability>
    <hidden>true</hidden>
    <fullTextIndexed>false</fullTextIndexed>
</property>
<property>
    <ref>departmentKey</ref>
    <updatability>read</updatability>
    <hidden>true</hidden>
    <fullTextIndexed>true</fullTextIndexed>
</property>
<property>
    <ref>privacyAndGuidelines</ref>
    <updatability>readwrite</updatability>
    <hidden>true</hidden>
    <fullTextIndexed>false</fullTextIndexed>
</property>
<property>
    <ref>touchpointState</ref>
    <updatability>readwrite</updatability>
    <hidden>true</hidden>
    <fullTextIndexed>false</fullTextIndexed>
/property>
<property>
    <ref>touchpointSession</ref>
    <updatability>readwrite</updatability>
    <hidden>true</hidden>
    <fullTextIndexed>false</fullTextIndexed>
</property>
-->

Thanks to Vincent Gicquel , for remembering me.

Update 2

Another possible workaround to prevent TDI from deleting the touchpoint state is described in this article.

Author
Add a comment
Error
There was an error sending your comment, please try again.
Thank you!
Your comment has been submitted and will be published once it has been approved.

Your email address will not be published. Required fields are marked with *

Suggested Reading
Aaron Burden: Fountain pen and a notebook

Some weeks ago I wrote about an workaround to prevent TDI from deleting the touchpoint status in HCL Connections .

During some research on TDI I found Mapping fields manually in the HCL Connections documentations. This document describes how to add additional fields to the TDI synchronisation. On point 11 I found something new for me. You can add additional fields and then add the content with an Javascript function for example.

Read in about 2 min
Card image cap

I wrote about font loading from external CDN in the post Hiding The Create Community Button 2nd last year and hoped this is finally fixed for all Connections applications. A good summary on the reasons to not allow external font loading is Blocking Web Fonts for Speed and Privacy .

So I checked with a Connections 7 deployment with the latest CFix (CFix.70.2112) deployed, if this is still an issue with Connections.

In former Connections' versions we found external fonts loaded in Orient Me (/social), Communities Catalog (/communities) and the Admin panel (/cnxadmin/).

Read in about 5 min
Card image cap

Some time ago I got the tip from HCL Support, that the Create Community button will recognize the role community-creator only when the gatekeeper option CATALOG_CARD_UPDATED is set to false.

This is working, but I had to complain, that this option activates some code, which loads fonts from a CDN instead of the local Connections deployment.

Read in about 2 min