IBM Connections is more than a social application, it is a highly evolved social enterprise platform. With this comes a high degree of integrability and the opportunity for end users to act in a contextual manner on business applications from within their collaboration environment, where their network of experts and shared knowledge can help them make better business decisions. This session will demonstrate some real world examples working both for IBM Connections on premises and on cloud. It will explain how this integration can be achieved through components such as the hompage's Activity Stream and how these integrations can come together for organisations to get the most out of this social enterprise platform
2. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Please Note:
• IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s
sole discretion.
• Information regarding potential future products is intended to outline our general product direction and it should not be
relied on in making a purchasing decision.
• The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver
any material, code or functionality. Information about potential future products may not be incorporated into any contract.
• The development, release, and timing of any future features or functionality described for our products remains at our sole
discretion.
• 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.
3. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
About us
twitter.com/stefanopog linkedin.com/in/stefanopog
Tech.poglianis.net
linkedin.com/in/wannesrams
www.ramsit.com
twitter.com/wannesrams
www.ramsit.com/blog
http://www.slideshare.net/palmke
4. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Overview
This is a Technical Session !
• Introduction
• Architecture
• Demo
• Q & A
5. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Introduction : Functional goal
Why we did …
• Integration between enterprise business processes and
Collaborative tools
• Using new technologies
• ActivityStream = Cockpit
• In context
6. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Introduction : Functional View
What we did …
• Scenario of the Demo
§ Post a tweet to the IC Activity Stream
§ Use an embedded experience to retweet or reply from within
Connections
§ No re-authentication
7. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Introduction : Technology View
How we did …
• The Demo was built on the following technology
§ Activity Stream / OS Gadgets / OAuth
• Using the following languages:
§ PHP and Javascript
§ Node-RED on BlueMix
• Targetting both:
§ IBM Connections Cloud and
§ IBM Connections On Premises
8. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Technical goal
What we demonstrated…
• Interact with the “Connections” ActivityStream API
§ Use API’s to send and pull information to and from IC
§ Send an event with its associated Embedded Experience to the
ActivityStream
• Manage the interaction with an external application from within
the Embedded Experience
• Interact with “Connections” using OAuth 2.0 or Basic Auth
9. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Important !
All the APIs we have been using are the same, whether we talk to
an IBM Connections On Premises instance or to an IBM
Connections Cloud instance !
10. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
The only significant differences are….
1. IBM Connections Cloud uses an HTML file rendered from a
« default » gadget
1. IBM Connections On Premises uses a « custom » OS Gadget
2. We used standard « XHR » from the HTML file in order to
interact with Twitter
1. The IBM Connections On Premises OS Gadget uses the
« environment » provided by the gadget container
11. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
This is all explained here (simple, after all)
http://ibm.co/1NE7vXm
See also the screenshots in the appendix
12. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Authorizing the custom « gadget » (Cloud)
13. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Defining the OAuth keys (Cloud)
14. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Defining the OAuth Key (On Prem)
• Setting the WasAdmin right
§ cd /opt/IBM/WebSphere/AppServer/profiles/Dmgr01/bin
§ ./wasadmin.sh -lang jython -username wpadmin -password Ond3mand
• execfile('oauthAdmin.py')
• Register a new OAuth key
§ OAuthApplicationRegistrationService.addApplication(‘s1', 'Sample Twitter
Application', 'http://localhost/t2c/callbackC.php')
• Review the list of registered applications
§ OAuthApplicationRegistrationService.browseApplications()
§ a=OAuthApplicationRegistrationService.getApplicationById(‘s1').get('client_secret')
§ print a
15. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Defining the OAuth Key (On Prem)
16. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Registering an Application (On Prem)
• Setting the WasAdmin right
§ cd /opt/IBM/WebSphere/AppServer/profiles/Dmgr01/bin
§ ./wasadmin.sh -lang jython -username wpadmin -password Ond3mand
• execfile(‘newsAdmin.py')
• Register a new Application
§ NewsActivityStreamService.registerApplication(appId, displayName, url,
secureUrl, imageUrl, secureImageUrl, summary, isEnabled)
• Review the list of registered applications
§ NewsActivityStreamService.listApplicationRegistrations()
§ a = NewsActivityStreamService.getApplicationRegistration("applicationId")
§ print a
17. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Registering an Application (On Prem)
18. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Authorizing the custom « gadget » (OnPrem)
19. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Authorizing the custom « gadget » (OnPrem)
20. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Authorizing the custom « gadget » (OnPrem)
21. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Authorizing the custom « gadget » (OnPrem)
22. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Architecture – Posting to Connections
Client Program
Save
Session
Get from Twitter1. Post to Connections2.
23. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Architecture – Posting to Connections
Client Program
Saved
Session
Post to « my program »1. Post to Twitter3.
2.
24. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
The « flow » using Node-RED
25. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
The new IBM Connections « node »
53. 2016ConnectThe Premier Social Business and Digital Experience Conference
MakeEveryMomentCount
Notices and Disclaimers cont.
Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources.
IBM has not tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related
to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the
quality of any third-party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL
WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE.
The provision of the information contained herein is not intended to, and does not, grant any right or license under any IBMpatents, copyrights, trademarks or
other intellectual property right.
•IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS, Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document Management
System™, FASP®, FileNet®, Global Business Services ®, Global Technology Services ®, IBM ExperienceOne™, IBM SmartCloud®, IBM Social Business®,
Information on Demand, ILOG, Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®,
pureCluster™, PureCoverage®, PureData®, PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®,
Smarter Commerce®, SoDA, SPSS, Sterling Commerce®, StoredIQ, Tealeaf®, Tivoli®, Trusteer®, Unica®, urban{code}®, Watson, WebSphere®, Worklight®,
X-Force® and System z® Z/OS, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and
service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark
information" at: www.ibm.com/legal/copytrade.shtml.