Extending the business card is explained here
Is there a way to inject a component in the IBM Connections Business Card popout?
-
05-12-2021 - |
Question
I am working on an integration with IBM Connections 4.0 and would like to inject a component into the business card popout that you get when hovering over contact in the Connections interface:
The component can be as simple as a link but an iWidget or OpenSocial Gadget would be great as well. Are there any integration points for the business card?
I have done some some initial research but have not turned up much outside of integrating the business card into an external app.
Solution
OTHER TIPS
For posterity, am appending the steps I took to achieve this based on the answer from muenzpraeger to follow the steps at IBM Connections 4 Part 4: Customizing, Security, Performance, and Integration. Note that your paths may be different and you will need to get the correct user and password to access the wsadmin console.
$ mkdir -p /tmp/business-card-add-link
$ cd /opt/IBM/WebSphere/AppServer/profiles/Dmgr01/bin
$ ./wsadmin.sh -user USER -password PASSWORD -lang jython
wsadmin> execfile("connectionsConfig.py")
wsadmin> print AdminControl.getCell()
connectionswwCell01
wsadmin> LCConfigService.checkOutConfig("/tmp/business-card-add-link","connectionswwCell01")
Added the following to LotusConnections-config.xml that was in /tmp/business-card-add-link
<sloc:serviceReference serviceName="googleMeService"
href="http://www.google.com" enabled="true"
ssl_href="http://www.google.com" ssl_enabled="false"
person_card_service_url_pattern="/search?hl=en&q=email:{email}:userid:{userid}:uid:{uid}:displayName:{displayName}:phone:{workPhoneNumber}&btnG=Google+Search"
person_card_service_name_js_eval="'Google Me'"/>
and save the file. Back in the console:
wsadmin> LCConfigService.updateConfig("versionStamp","")
wsadmin> LCConfigService.checkInConfig()
wsadmin> synchAllNodes()
Restart Connections
The instructions from the link say to make changes to the service-location.xsd file as well but these changes were not persisting after checkin and restart. This results in an error that prevents Connections server from properly running. Looking at the log files it was complaining that the service googleMeService referenced in LotusConnections-config.xml was not in the list of services in service-location.xsd.
To get around this I just changed the service-location.xsd file in place. I found two occurences of the file using the find command:
find . | grep LotusConnections-config/service-location.xsd
I added <xsd:enumeration value="googleMeService" />
to the <xsd:simpleType name="serviceNames">
section as indicated by the linked documentation and restarted the Connections server.