38
© 2014 IBM Corporation Martin Leyrer – IT-Specialist IBM Software Services for Collaboration 2014-06-17 Customizing Connections Profiles to provide a Company-Wide "Who is Who"

Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

Embed Size (px)

DESCRIPTION

Connections and especially Connections Profiles are very customizable. I will show you, based on the work my colleagues and I did for a customer, why, what and how you can customize the TDI assembly lines and the Connections Profiles user interface to provide your customers with a profiles experience adapted to their expectations (including leading and trailing titles, customized hierarchy trees, additional fields, imported rich text, etc.).

Citation preview

Page 1: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM Corporation

Martin Leyrer – IT-SpecialistIBM Software Services for Collaboration2014-06-17

Customizing Connections Profilesto provide a Company-Wide"Who is Who"

Page 2: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who
Page 3: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who
Page 4: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration4/38

© 2012 IBM Corporation

Legal Disclaimer

● © IBM Corporation 2014. All Rights Reserved.

● The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

● References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

● Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.

● All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer.

● IBM®, the IBM logo, Lotus®, Lotus Notes®, Notes®, Domino®, Quickr®, Sametime®, WebSphere®, UC2®, Connections, … are trademarks of International Business Machines Corporation in the United States, other countries, or both.

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

● Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.

● Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

● UNIX is a registered trademark of The Open Group in the United States and other countries.

● Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others.

Page 5: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration5/38

© 2012 IBM Corporation

Who Am I

Martin LeyrerIBM Collaboration Solutions (ICS, the brand formerly known as Lotus) IT-Specialist with IBM Austria

IBM e-mail: [email protected]

E-mail: [email protected]

Twitter: http://www.twitter.com/leyrer

Facebook: https://www.facebook.com/leyrer

Blog 1: http://www.leyon.at

LinkedIn: http://at.linkedin.com/in/leyrer

Xing: www.xing.com/profile/Martin_Leyrer

Martin LeyrerICS IT-Specialist

Mail: [email protected]: +43 664 618 6826

Martin LeyrerICS IT-Specialist

Mail: [email protected]: +43 664 618 6826

Page 6: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration6/38

© 2012 IBM Corporation

The Who

● Existing Domino customer

● Already had a “Who is Who” application running– Based on Typo3– Static

– Centrally managed– Manually managed

– No Single Sign On (SSO)

● Looking for something “better”

Page 7: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration7/38

© 2012 IBM Corporation

Who Is Who

● Based on Connections entitlement– No additional SW cost for the customer

● Extends existing functionality with social functions

● Feed HR personnel data directly into the system

● Extend person data from other systems

● Integrate centrally managed employee photos (CI)

● SSO with Operating System (SPNEGO)

Page 8: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration8/38

© 2012 IBM Corporation

Page 9: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration9/38

© 2012 IBM Corporation

Page 10: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration10/38

© 2012 IBM Corporation

Page 11: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration11/38

© 2012 IBM Corporation

User Import – Custom Iterator

Page 12: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration12/38

© 2012 IBM Corporation

DIIOP Connector

Page 13: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration13/38

© 2012 IBM Corporation

Map Fields

Page 14: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration14/38

© 2012 IBM Corporation

Lookup Manager

Page 15: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration15/38

© 2012 IBM Corporation

Lookup Manager

Page 16: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration16/38

© 2012 IBM Corporation

Managing Errors

Page 17: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration17/38

© 2012 IBM Corporation

tdi-profiles-config.xml

● <profileExtensionAttributes>

● ...

● <!-- add one simple attribute START -->

● <!-- sourceKey ... The name of the !!! LDAP attribute !!! that maps to the extension attribute. This parameter is required. -->

● <simpleAttribute extensionId="twittername" length="256" sourceKey="twitter" />

● <!-- add one simple attribute END -->

● </profileExtensionAttributes>

Page 18: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration18/38

© 2012 IBM Corporation

profiles-types.xml

● <type>

● ...

● <!-- add one simple attribute START -->

● <property>

● <ref>twittername</ref>

● <updatability>readwrite</updatability>

● <hidden>false</hidden>

● </property>

● <!-- add one simple attribute END -->

● </type>

Page 19: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration19/38

© 2012 IBM Corporation

Easy as 1-2-3

● Make sure you ALWAYS have at least a “$dn” field with the proper content

● The content of the “$dn” field must correspond to the name returned by LDAP

● Work Attributes can be referenced in map_dbrepos_from_source.properties

● Implement proper error handling

Page 20: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration20/38

© 2012 IBM Corporation

Photo Import – Assembly Line

Page 21: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration21/38

© 2012 IBM Corporation

Photo Import – Assembly Line

Page 22: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration22/38

© 2012 IBM Corporation

DIIOP

Page 23: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration23/38

© 2012 IBM Corporation

Input Mapping

Page 24: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration24/38

© 2012 IBM Corporation

Skip, Not Ignore

Page 25: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration25/38

© 2012 IBM Corporation

Accessing the File Data

Page 26: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration26/38

© 2012 IBM Corporation

Write Image to File

Page 27: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration27/38

© 2012 IBM Corporation

User Interface Adoptions

● Extension Attributes– tdi-profiles-config.xml– profiles-config.xml– profile-types.xml

● String Bundles– LotusConnections-config.xml

● Widgets– widgets-config.xml

● Freemarker Templates– profileDetails.ftl– profileEdit.ftl

– searchResults.ftl– businessCardInfo.ftl

Page 28: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration28/38

© 2012 IBM Corporation

CheckOut● cd C:\IBM\WebSphere\AppServer\profiles\ic-dmgr01\bin

● wsadmin.bat -lang jython -host ic-dmgr01.issc.local -username wasadmin -password passw0rd

● execfile("profilesAdmin.py")

● ProfilesConfigService.checkOutConfig("C:/IBM/tmp", "ic-cell")

Page 29: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration29/38

© 2012 IBM Corporation

C:/IBM/tmp/profiles-config.xml

● <profileExtensionAttributes>…<!-- add one simple attribute START --><simpleAttribute extensionId="twittername" length="256" /><!-- add one simple attribute END -->

</profileExtensionAttributes>...

● Change <templateReloading>0</templateReloading> to <templateReloading>1</templateReloading>

Page 30: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration30/38

© 2012 IBM Corporation

C:/IBM/tmp/profileEdit.ftl

<@util.renderSection sectionLabel="contactInformation">

...

<@util.renderFormControl ref="blogUrl"singleColumnLayout=false nlsKey="label.blogUrl"/>

<#-- add one simple attribute START -->

<@util.renderFormControl ref="twittername"singleColumnLayout=false nlsKey="label.twittername"/>

<#-- add one simple attribute END -->

</@util.renderSection>

Page 31: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration31/38

© 2012 IBM Corporation

C:/IBM/tmp/profileDetails.ftl

<#-- add one simple attribute START -->

<@util.renderProperty ref="twittername"nlsKey="label.twittername" hideIfEmpty=false ;

ref, dataId, dataKey, nlsKey, nlsBundle>

<tr> <th scope="row"> <@util.renderNls nlsKey=nlsKey/> </th>

<td><p>

<@util.renderValue ref=ref renderAs="twittername"/>

</p></td>

</tr>

</@util.renderProperty>

<#-- add one simple attribute END -->

Page 32: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration32/38

© 2012 IBM Corporation

C:\IBM\tmp\profiles-types.xml<type>

...

<!-- add one simple attribute START -->

<property>

<ref>twittername</ref>

<updatability>readwrite</updatability>

<hidden>false</hidden>

</property>

<!-- add one simple attribute END -->

</type>

Page 33: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration33/38

© 2012 IBM Corporation

Labels● Extract from the installedApps/Profiles.ear/lc.profiles.app.war/WEB-

INF/lib/lc.profiles.web.app.jar:com/ibm/lconn/profiles/strings/ui.properties file the version of each resource file for each locale and save a copy for each locale like this:<IBM_Connections_Customization_Dir>/strings/com.ibm.lconn.profiles.strings.ui.properties

● com.ibm.lconn.profiles.strings.ui.properties# Label mod STARTlabel.twittername=Twitter Handle # Label mod END

Page 34: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration34/38

© 2012 IBM Corporation

Page 35: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration35/38

© 2012 IBM Corporation

Further Reading

● Connections Wiki: Developing custom Tivoli Directory Integrator assembly lines for Profiles– Setting up your development environment

– Using a custom source repository connector– Using the PhotoConnector

– https://ibm.biz/BdRWb7

● Connections Wiki: Creating a simple profile data model and template customization– https://ibm.biz/BdRWpE

Page 36: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration36/38

© 2012 IBM Corporation

Honorary Mention

Page 37: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© 2014 IBM [email protected], IBM Software Services for Collaboration37/38

© 2012 IBM Corporation

Q & A

Martin LeyrerIBM Collaboration Solutions IT-Specialist with IBM Austria

IBM e-mail: [email protected]

E-mail: [email protected]

Twitter: http://www.twitter.com/leyrer

Facebook: https://www.facebook.com/leyrer

Blog: http://www.leyon.at

LinkedIn: http://at.linkedin.com/in/leyrer

Martin LeyrerICS IT-Specialist

Mail: [email protected]: +43 664 618 6826

Martin LeyrerICS IT-Specialist

Mail: [email protected]: +43 664 618 6826

Page 38: Social Connections VI -- Customizing Connections Profiles to Provide a Company-Wide Who Is Who

© IBM Corporation , IBM Software Services for Collaboration

© 2012 IBM Corporation