SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
Accessing the Activity Stream in IBM Connections
How best to access and some common usage patterns.
Bill Looby, Social Software Architect, IBM Connections
IBM SBT Webinar 08/28/13
Francis Moloney, Software Engineer, Social Business Toolkit
© 2013 IBM Corporation2
Future Webinars
Tentatively:
● September 25th: Development Environments – Quick Start Image, IBM
Greenhouse, IBM SmartCloud for Social Business
© 2013 IBM Corporation
IBM Connections App Dev Contest
● http://connectionscontest.openntf.org
● Chance to win 5 x $1000
● Submit your open source project until November 3rd
● All types of OpenNTF projects can be nominated that utilize IBM Connections
● Developers can use a free shared development environment in the cloud
© 2013 IBM Corporation4
Disclaimers
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.
Using the Social Business Toolkit
Demo
Activity Stream Events
The Basics
© 2013 IBM Corporation7
A simple event
URL
http://.../activitystreams/@me/@all
Header
Content-Type : application/json
Content
{
"actor": {
"id": "@me"
},
"verb": "share",
"title": "${share}",
"object": {
"summary": "A totally new way of looking at
things",
"id": "thisid",
"displayName": "Something Interesting",
"url": "http://w3.ibm.com"
},
}
© 2013 IBM Corporation8
Adding a generator
Content
{
"generator": {
"image": {"url": "http://.../...news.png"},
"id": "DemoApp1",
"displayName": "Demo Application",
"url": "http://www.ibm.com/"
},
"actor": {
"id": "@me"
},
"verb": "share",
"title": "${share}",
"object": {
"summary": "A totally new way of looking at
things",
"id": "thisid",
"displayName": "Something Interesting",
"url": "http://w3.ibm.com"
}
}
Notes :
● The icon is displayed scaled down
● The generator name is displayed on hover
© 2013 IBM Corporation9
Adding a comment
Content
{
"actor": {...},
"verb": "comment",
"title": "${comment}",
"object": {
"summary": "This is definitely interesting",
"id": "commentid",
"objectType": "comment",
"displayName": "Definitely interesting",
"url": "http://w3.ibm.com"
},
"target": {
"summary": "A totally new way of looking at
things",
"id": "thisid",
"displayName": "Something Interesting",
"url": "http://w3.ibm.com"
},
"connections": {
"rollupid": "thisid"
Notes :
● The Target is the previous Object !
● The rollupid is needed so we know not to
display separately
● The objectType is key for embedded display
© 2013 IBM Corporation10
Adding some formatted text
Content
{
"actor": {
"id": "@me"
},
"verb": "share",
"title": "${share}",
"content":"<table><tr><td><i>Click on this entry
to launch the embedded experience and see
details and event history<p/><b>Note :</b> This is
the default experience</i></td><td><img
src="http://inspirationalgadget.googlecode.com/s
vn/trunk/images/misty.jpg"></td></tr></table>",
"object": {
"summary": "A totally new way of looking at
things",
"id": "thisid",
"displayName": "Something Interesting",
"url": "http://w3.ibm.com"
}
}
Notes :
● We display both content and object summary
● We filter trim all HTML for security and display
reasons.
© 2013 IBM Corporation11
And adding an embedded experience
Content
{
"actor": {
"id": "@me"
},
"verb": "share",
"title": "${share}",
"content":"...",
"object": {
"summary": "A totally new way of looking at
things",
...
},
"openSocial": {
"embed": {
"gadget":
"http://inspirationalgadget.googlecode.com/svn/tr
unk/wisdom.xml",
"context": {"id":"12345"}
}
}
}
Integrating a Travel Website
Basic requirements
Use Cases
● Public News
● Huge discounts on SmartStay hotels
● Actions
● Your flight has been rescheduled. Please
approve or cancel
● Follow travel topics
● Train strike in Italy
● Follow people travelling
● John Smith has recommended travelling in
France
● Travel Community
● We now support TopHotels in Australia
Things to consider
● Who is sending the event ?
● What id is used ?
● Who is the actor ?
● Is there one clearly defined ?
● What is the main 'object' ?
● Is it a country ? An airline ? A trip ?
● Who should receive the event ?
● . . . and is it public
● What do I want to say in the event ?
● . . . and how much detail will I provide ?
© 2013 IBM Corporation14
Public News : Huge Discounts on SmartStay hotels
● Who is sending the event
● We want this to be public, so it has to be a
trusted user* or the actor.
● Who is the actor
● Most likely it is a System User called 'Travel
System as there is no real user.
● What is the main 'object'
● If you want to roll up news (i.e. show only the
latest on this topic) keep track of the topic.
● Who should receive the event
● @public
● What do I want to say in the event
● As much as you like, but it's best to show an
interesting summary and provide a link back
to the travel app for the full story
* A trusted user is any user in the
trustedExternalApplication role.
URL
http://.../activitystreams/@public/@all
Content
{
"actor": {
"id": "userIdForTravelSystem"
},
"verb": "post",
"title": "${post}",
"object": {
"summary": "Huge discounts are currently
available on SmartStayHotels. Book soon !",
"id": "smartstay:123",
"displayName": "SmartStay Discounts",
"url":
"http://www.aroundtheworldsample.com/123"
},
}
© 2013 IBM Corporation15
Public News : Huge Discounts on SmartStay hotels
● The event appears under discover
● If you want it on a users stream aswell,
you will need to distribute to both.
● The image for the Travel System user
appears.
● You will need to create this user
● You should also assign them the
trustedExternalApplication rôle (you'll need
this later)
● The title is 'SmartStay Discounts'
● You could add more meaning but you may
want to roll up discounts on SmartStay
hotels together.
© 2013 IBM Corporation16
Actions : Your flight has been rescheduled
● Who is sending the event
● This is a private event, so you can send as a
system user or using Oauth, authorised to
access the users stream.
● Who is the actor
● Most likely it is a System User called 'Travel
System as there is no real user.
● What is the main 'object'
● A 'travel plans' object.
● Who should receive the event
● The relevant user
● What do I want to say in the event
● Either provide a link or ideally an embedded
experience.
URL
http://.../activitystreams/<userid>/@all
Content
{ . . .
"verb": "update",
"title": "${update}",
"object": {
"summary": "Your flight has been
rescheduled",
"id": "travel:123",
"displayName": "Travel to Madrid",
},
"openSocial": {
"embed": {
"gadget": "http://.../travel.xml",
"context": {"id":"travel:123"}
}
},
"connections": {
"actionable": true
© 2013 IBM Corporation17
Actions : Your flight has been rescheduled
● The event appears under Action
Required in the users stream
● It will also update the 'badge'
● The example shown uses simple links
● These could link to the Travel System
page for accept or cancel
● However these aren't needed if you
have the EE
● On click, a user can be shown more
information and given accept and cancel
buttons.
© 2013 IBM Corporation18
Follow travel topics : Train strike in Italy
● Who is sending the event
● This event is likely going to multiple users
(anyone following) so a trusted sender
should be used
● Who is the actor
● Whoever is updating the followed object (e.g.
The poster if this is a post on an Italy travel
forum)
● What is the main 'object'
● A 'Travel in Italy' travel object.
● Depends how you want to roll up
● Who should receive the event
● Anyone following the Italy travel object *
● What do I want to say in the event
● The news details
URL
http://.../activitystreams/<userid>/@all
Content
{
"actor": {
"id": "userIdForTravelSystem"
},
"verb": "update",
"title": "${update}",
"object": {
"summary": "Train Strike in Italy",
"id": "smartstay:123",
"displayName": "Travel in Italy",
"url":
"http://www.aroundtheworldsample.com/123"
},
}
© 2013 IBM Corporation19
Follow people travelling : John Smith has recommended travel in
France
● Who is sending the event
● Either a trusted user or John Smith (we'll be
sending a public event)
● Who is the actor
● John Smith
● What is the main 'object'
● A 'France' travel object.
● Who should receive the event
● Send to @public – connections will distribute
to John Smiths followers
● Can send to any followers of 'Travel in
France' also
● What do I want to say in the event
● A summary of the travel in france object
should be enough.
URL
http://.../activitystreams/@public/@all
Content
{
"actor": {
"id": "userIdForAroundTheWorld"
},
"verb": "like",
"title": "${like}",
"object": {
"summary": "Travelling in France in 2013",
"id": "smartstay:123",
"displayName": "Travel in France",
"url":
"http://www.aroundtheworldsample.com/123"
},
}
© 2013 IBM Corporation20
Travel community : We now support TopHotels in Australia
● Who is sending the event
● This event is going to a community so
although any member can send an event (as
long as they are the actor) a trusted sender
should probably be used
● Who is the actor
● You could be forwarding user actions of
interest to a community, or general travel
information
● What is the main 'object'
● An 'Hotels in Australia' travel object possibly.
● Depends how you want to roll up
● Who should receive the event
● The community. Connections will distribute to
anyone following the community
● What do I want to say in the event
● The news details
URL
http://.../activitystreams/<communityid>/@all
Content
{
"actor": {
"id": "userIdForTravelSystem"
},
"verb": "update",
"title": "${update}",
"object": {
"summary": "Hotels in Australia",
"id": "smartstay:123",
"displayName": "We now support TopHotels in
Australia. You can book through normal chanels",
"url":
"http://www.aroundtheworldsample.com/123"
},
}
Some practical considerations
© 2013 IBM Corporation22
Using a system user to access
● Oauth allows us to access on
behalf of every user individually
● Could access for each user
● But this tends to be impractical and
slow
● More practical to create a User to
send events
● . . . can work quite well as an Actor
● . . . you get to look at the profile
● . . . and the user can be followed
© 2013 IBM Corporation23
Distributing events
● Typically, an event can be sent
to . . .
● @public – if anyone can see and
should be able to discover
● A set of users who have recorded an
interest in the object
● A user at whom the event is actually
directed (this is generally the only
recipient)
● Any associated community (if there is
a means of expressing that
association)
{
openSocial : {
"deliverTo":[
{"objectType":"person",
"id":"thiscompany:id"},
{"objectType":"person",
"id":"@public"},
]
},
"verb":"post",
...
}
}
© 2013 IBM Corporation24
Batching events
● For performance reasons it's
generally more efficient to send a
number of events at once.
● This can be done by sending all
the events in a single array.
● Typically this is easier to do as a
trusted user as you may be
sending to multiple streams.
[
{"actor":{"id":"abc"},
"verb": "post",
"object":{"id":"a"},
},
{"actor":{"id":"abc"},
"verb": "share",
"object":{"id":"b"},
},
{"actor":{"id":"xyz"},
"verb": "update",
"object":{"id":"b"},
}
]
Activity Streams and Microblogging
© 2013 IBM Corporation26
Comparing Activity Streams and Microblogging
● Activity Streams don't 'own content
● Activity Streams don't support their
own commenting and
recommendations
● Activity Streams use the Activity
Stream API to POST
● Activity Streams use the Activity
Stream API to GET
Wikis
Blogs
Others
AS API
● Microblogging owns content
● Microblogging supports comments
and recommendations
● Microblogging use the Microblogging
API to POST
● Microblogging use the Activity Stream
API to GET
Ublog
Ublog
API
AS API
© 2013 IBM Corporation27
Resources and Questions
● Home page: http://ibmdw.net/social
● SDK: http://ibmsbt.openntf.org
● GitHub: https://github.com/OpenNTF/SocialSDK
● StackOverflow: #ibmsbt
● Twitter: @ibmsbt
● YouTube: http://youtube.com/ibmsbt
● Playground: http://bit.ly/sbtplayground
© 2013 IBM Corporation28
Acknowledgements and Disclaimers
© Copyright IBM Corporation 2013. All rights reserved.
– U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with
IBM Corp.
IBM, the IBM logo, ibm.com, Rational, the Rational logo, Telelogic, the Telelogic logo, Green Hat, the Green Hat logo, and other IBM
products and services are trademarks or registered trademarks of International Business Machines Corporation in the United States,
other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a
trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information
was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is
available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml
Other company, product, or service names may be trademarks or service marks of others.
Availability: 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.
The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are
provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or
advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this
presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising
out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation 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.
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. 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.

Más contenido relacionado

La actualidad más candente

Open social gadgets in ibm connections
Open social gadgets in ibm connectionsOpen social gadgets in ibm connections
Open social gadgets in ibm connectionsVincent Burckhardt
 
The Days of Web Standards "IA" 20070715
The Days of Web Standards "IA" 20070715The Days of Web Standards "IA" 20070715
The Days of Web Standards "IA" 20070715Takashi Sakamoto
 
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and moreYan Shi
 
Skb web2.0
Skb web2.0Skb web2.0
Skb web2.0animove
 
Code your Own: Authentication Provider for Blackboard Learn
Code your Own: Authentication Provider for Blackboard LearnCode your Own: Authentication Provider for Blackboard Learn
Code your Own: Authentication Provider for Blackboard LearnDan Rinzel
 
Five Things You Didn't Know About Firebase Auth
Five Things You Didn't Know About Firebase AuthFive Things You Didn't Know About Firebase Auth
Five Things You Didn't Know About Firebase AuthPeter Friese
 
What is "Rich"? Why do "Rich"?
What is "Rich"? Why do "Rich"?What is "Rich"? Why do "Rich"?
What is "Rich"? Why do "Rich"?Dave Malouf
 

La actualidad más candente (9)

Open social gadgets in ibm connections
Open social gadgets in ibm connectionsOpen social gadgets in ibm connections
Open social gadgets in ibm connections
 
Introduction to OAuth
Introduction to OAuthIntroduction to OAuth
Introduction to OAuth
 
The Days of Web Standards "IA" 20070715
The Days of Web Standards "IA" 20070715The Days of Web Standards "IA" 20070715
The Days of Web Standards "IA" 20070715
 
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and more
 
Skb web2.0
Skb web2.0Skb web2.0
Skb web2.0
 
Code your Own: Authentication Provider for Blackboard Learn
Code your Own: Authentication Provider for Blackboard LearnCode your Own: Authentication Provider for Blackboard Learn
Code your Own: Authentication Provider for Blackboard Learn
 
Five Things You Didn't Know About Firebase Auth
Five Things You Didn't Know About Firebase AuthFive Things You Didn't Know About Firebase Auth
Five Things You Didn't Know About Firebase Auth
 
What is "Rich"? Why do "Rich"?
What is "Rich"? Why do "Rich"?What is "Rich"? Why do "Rich"?
What is "Rich"? Why do "Rich"?
 
Explaining Ajax
Explaining AjaxExplaining Ajax
Explaining Ajax
 

Destacado

MAS202 - Customizing IBM Connections - Downloadable
MAS202 - Customizing IBM Connections - DownloadableMAS202 - Customizing IBM Connections - Downloadable
MAS202 - Customizing IBM Connections - Downloadablepaulbastide
 
Goldsmiths
GoldsmithsGoldsmiths
Goldsmithsdrjulia
 
Rock the activity stream api
Rock the activity stream api Rock the activity stream api
Rock the activity stream api Wannes Rams
 
Hack IBM Connections - Advance Use - Iframes & more...
Hack IBM Connections - Advance Use - Iframes & more...Hack IBM Connections - Advance Use - Iframes & more...
Hack IBM Connections - Advance Use - Iframes & more...Ulises Gascón González
 
Enterprise Social Media: 5 Emerging Trends
Enterprise Social Media: 5 Emerging TrendsEnterprise Social Media: 5 Emerging Trends
Enterprise Social Media: 5 Emerging TrendsLuis Benitez
 
What is new in IBM Connections 5.5 and IBM Docs 2.0
What is new in IBM Connections 5.5 and IBM Docs 2.0What is new in IBM Connections 5.5 and IBM Docs 2.0
What is new in IBM Connections 5.5 and IBM Docs 2.0Luis Benitez
 

Destacado (6)

MAS202 - Customizing IBM Connections - Downloadable
MAS202 - Customizing IBM Connections - DownloadableMAS202 - Customizing IBM Connections - Downloadable
MAS202 - Customizing IBM Connections - Downloadable
 
Goldsmiths
GoldsmithsGoldsmiths
Goldsmiths
 
Rock the activity stream api
Rock the activity stream api Rock the activity stream api
Rock the activity stream api
 
Hack IBM Connections - Advance Use - Iframes & more...
Hack IBM Connections - Advance Use - Iframes & more...Hack IBM Connections - Advance Use - Iframes & more...
Hack IBM Connections - Advance Use - Iframes & more...
 
Enterprise Social Media: 5 Emerging Trends
Enterprise Social Media: 5 Emerging TrendsEnterprise Social Media: 5 Emerging Trends
Enterprise Social Media: 5 Emerging Trends
 
What is new in IBM Connections 5.5 and IBM Docs 2.0
What is new in IBM Connections 5.5 and IBM Docs 2.0What is new in IBM Connections 5.5 and IBM Docs 2.0
What is new in IBM Connections 5.5 and IBM Docs 2.0
 

Similar a How to access the Activity Stream in IBM Connections

Operating System Upgrade Implementation Report And...
Operating System Upgrade Implementation Report And...Operating System Upgrade Implementation Report And...
Operating System Upgrade Implementation Report And...Julie Kwhl
 
Open APIs - concepts. applications. visualizations.
Open APIs - concepts. applications. visualizations.Open APIs - concepts. applications. visualizations.
Open APIs - concepts. applications. visualizations.Christian Dalager
 
The Green Lab - [02 C] [case study] Progressive web apps
The Green Lab - [02 C] [case study] Progressive web appsThe Green Lab - [02 C] [case study] Progressive web apps
The Green Lab - [02 C] [case study] Progressive web appsIvano Malavolta
 
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...All about engagement with Universal Analytics @ Google Developer Group NYC Ma...
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...Nico Miceli
 
Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011sullis
 
Liti Solutions Portfolio - July 2015
Liti Solutions Portfolio - July 2015Liti Solutions Portfolio - July 2015
Liti Solutions Portfolio - July 2015Phuc (Aaron) Dang
 
BarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social HackathonBarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social Hackathonmarvin337
 
Identifying Users Across Platforms with a Universal ID Webinar Slides
Identifying Users Across Platforms with a Universal ID Webinar SlidesIdentifying Users Across Platforms with a Universal ID Webinar Slides
Identifying Users Across Platforms with a Universal ID Webinar SlidesLooker
 
Augmented Reality and The Developer
Augmented Reality and The DeveloperAugmented Reality and The Developer
Augmented Reality and The Developersidgabriel
 
Android - Open Source Bridge 2011
Android - Open Source Bridge 2011Android - Open Source Bridge 2011
Android - Open Source Bridge 2011sullis
 
Goodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social UpdateGoodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social UpdatePatrick Chanezon
 
Search Engine Marketing: Tracking Pages Without JavaScript by Using Web Beacons
Search Engine Marketing: Tracking Pages Without JavaScript by Using Web BeaconsSearch Engine Marketing: Tracking Pages Without JavaScript by Using Web Beacons
Search Engine Marketing: Tracking Pages Without JavaScript by Using Web BeaconsNavigationArts
 
Using personas in service design - Scotch on the Rocks 2013 (7/6/2013)
Using personas in service design - Scotch on the Rocks 2013 (7/6/2013)Using personas in service design - Scotch on the Rocks 2013 (7/6/2013)
Using personas in service design - Scotch on the Rocks 2013 (7/6/2013)Tuuli Aalto-Nyyssönen
 
The Glass Class: Rapid Prototyping for Wearable Computers
The Glass Class: Rapid Prototyping for Wearable ComputersThe Glass Class: Rapid Prototyping for Wearable Computers
The Glass Class: Rapid Prototyping for Wearable ComputersMark Billinghurst
 
Ways to split user stories
Ways to split user storiesWays to split user stories
Ways to split user storiesNikos Raptis
 
Setup for Visualisation & Interactive Prototyping with Unity3D
Setup for Visualisation & Interactive Prototyping with Unity3DSetup for Visualisation & Interactive Prototyping with Unity3D
Setup for Visualisation & Interactive Prototyping with Unity3DBond University
 
Progressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & LearningsProgressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & LearningsJohannes Weber
 

Similar a How to access the Activity Stream in IBM Connections (20)

Operating System Upgrade Implementation Report And...
Operating System Upgrade Implementation Report And...Operating System Upgrade Implementation Report And...
Operating System Upgrade Implementation Report And...
 
Open APIs - concepts. applications. visualizations.
Open APIs - concepts. applications. visualizations.Open APIs - concepts. applications. visualizations.
Open APIs - concepts. applications. visualizations.
 
Abusing mobilegames
Abusing mobilegamesAbusing mobilegames
Abusing mobilegames
 
Smart campus
Smart campusSmart campus
Smart campus
 
The Green Lab - [02 C] [case study] Progressive web apps
The Green Lab - [02 C] [case study] Progressive web appsThe Green Lab - [02 C] [case study] Progressive web apps
The Green Lab - [02 C] [case study] Progressive web apps
 
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...All about engagement with Universal Analytics @ Google Developer Group NYC Ma...
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...
 
Smart campus
Smart campusSmart campus
Smart campus
 
Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011
 
Liti Solutions Portfolio - July 2015
Liti Solutions Portfolio - July 2015Liti Solutions Portfolio - July 2015
Liti Solutions Portfolio - July 2015
 
BarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social HackathonBarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social Hackathon
 
Identifying Users Across Platforms with a Universal ID Webinar Slides
Identifying Users Across Platforms with a Universal ID Webinar SlidesIdentifying Users Across Platforms with a Universal ID Webinar Slides
Identifying Users Across Platforms with a Universal ID Webinar Slides
 
Augmented Reality and The Developer
Augmented Reality and The DeveloperAugmented Reality and The Developer
Augmented Reality and The Developer
 
Android - Open Source Bridge 2011
Android - Open Source Bridge 2011Android - Open Source Bridge 2011
Android - Open Source Bridge 2011
 
Goodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social UpdateGoodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social Update
 
Search Engine Marketing: Tracking Pages Without JavaScript by Using Web Beacons
Search Engine Marketing: Tracking Pages Without JavaScript by Using Web BeaconsSearch Engine Marketing: Tracking Pages Without JavaScript by Using Web Beacons
Search Engine Marketing: Tracking Pages Without JavaScript by Using Web Beacons
 
Using personas in service design - Scotch on the Rocks 2013 (7/6/2013)
Using personas in service design - Scotch on the Rocks 2013 (7/6/2013)Using personas in service design - Scotch on the Rocks 2013 (7/6/2013)
Using personas in service design - Scotch on the Rocks 2013 (7/6/2013)
 
The Glass Class: Rapid Prototyping for Wearable Computers
The Glass Class: Rapid Prototyping for Wearable ComputersThe Glass Class: Rapid Prototyping for Wearable Computers
The Glass Class: Rapid Prototyping for Wearable Computers
 
Ways to split user stories
Ways to split user storiesWays to split user stories
Ways to split user stories
 
Setup for Visualisation & Interactive Prototyping with Unity3D
Setup for Visualisation & Interactive Prototyping with Unity3DSetup for Visualisation & Interactive Prototyping with Unity3D
Setup for Visualisation & Interactive Prototyping with Unity3D
 
Progressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & LearningsProgressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & Learnings
 

Más de IBM Connections Developers

Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM BluemixIBM Connections Developers
 
IBM Connect 2014 - AD204: What's new in the IBM Domino Objects: By Example
IBM Connect 2014 - AD204: What's new in the IBM Domino Objects: By ExampleIBM Connect 2014 - AD204: What's new in the IBM Domino Objects: By Example
IBM Connect 2014 - AD204: What's new in the IBM Domino Objects: By ExampleIBM Connections Developers
 
IBM Connect 2014 - AD302: New Ways to Work With Your IBM Connections Communities
IBM Connect 2014 - AD302: New Ways to Work With Your IBM Connections CommunitiesIBM Connect 2014 - AD302: New Ways to Work With Your IBM Connections Communities
IBM Connect 2014 - AD302: New Ways to Work With Your IBM Connections CommunitiesIBM Connections Developers
 
IBM Connect 2014 - AD105: IBM iNotes and IBM SmartCloud Notes Web Customizati...
IBM Connect 2014 - AD105: IBM iNotes and IBM SmartCloud Notes Web Customizati...IBM Connect 2014 - AD105: IBM iNotes and IBM SmartCloud Notes Web Customizati...
IBM Connect 2014 - AD105: IBM iNotes and IBM SmartCloud Notes Web Customizati...IBM Connections Developers
 
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocialIBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocialIBM Connections Developers
 
IBM Connect 2014 - BPD406: Ignite your IBM SmartCloud for Social Business Int...
IBM Connect 2014 - BPD406: Ignite your IBM SmartCloud for Social Business Int...IBM Connect 2014 - BPD406: Ignite your IBM SmartCloud for Social Business Int...
IBM Connect 2014 - BPD406: Ignite your IBM SmartCloud for Social Business Int...IBM Connections Developers
 
IBM Connect 2014 - SHOW501: Mastering Social Development Using the IBM Collab...
IBM Connect 2014 - SHOW501: Mastering Social Development Using the IBM Collab...IBM Connect 2014 - SHOW501: Mastering Social Development Using the IBM Collab...
IBM Connect 2014 - SHOW501: Mastering Social Development Using the IBM Collab...IBM Connections Developers
 
IBM Connect 2014 - BP207: Don’t Reinvent the Wheel – (Re)use Open Source Soft...
IBM Connect 2014 - BP207: Don’t Reinvent the Wheel – (Re)use Open Source Soft...IBM Connect 2014 - BP207: Don’t Reinvent the Wheel – (Re)use Open Source Soft...
IBM Connect 2014 - BP207: Don’t Reinvent the Wheel – (Re)use Open Source Soft...IBM Connections Developers
 
IBM Connect 2014 - AD301: What’s New on the IBM Social Business Toolkit Versi...
IBM Connect 2014 - AD301: What’s New on the IBM Social Business Toolkit Versi...IBM Connect 2014 - AD301: What’s New on the IBM Social Business Toolkit Versi...
IBM Connect 2014 - AD301: What’s New on the IBM Social Business Toolkit Versi...IBM Connections Developers
 
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...IBM Connections Developers
 
IBM Connect 2014 - KEY108: IBM Collaboration Solutions Application Developmen...
IBM Connect 2014 - KEY108: IBM Collaboration Solutions Application Developmen...IBM Connect 2014 - KEY108: IBM Collaboration Solutions Application Developmen...
IBM Connect 2014 - KEY108: IBM Collaboration Solutions Application Developmen...IBM Connections Developers
 
Programmatic Access to and Extensibility of the IBM SmartCloud for Social Bus...
Programmatic Access to and Extensibility of the IBM SmartCloud for Social Bus...Programmatic Access to and Extensibility of the IBM SmartCloud for Social Bus...
Programmatic Access to and Extensibility of the IBM SmartCloud for Social Bus...IBM Connections Developers
 
Technology to deliver Exceptional Social Digital Experiences
Technology to deliver Exceptional Social Digital ExperiencesTechnology to deliver Exceptional Social Digital Experiences
Technology to deliver Exceptional Social Digital ExperiencesIBM Connections Developers
 
What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1IBM Connections Developers
 
The Power of IBM SmartCloud for Social Business and XPages App Dev
The Power of IBM SmartCloud for Social Business and XPages App DevThe Power of IBM SmartCloud for Social Business and XPages App Dev
The Power of IBM SmartCloud for Social Business and XPages App DevIBM Connections Developers
 
Learn everything about IBM iNotes Customization
Learn everything about IBM iNotes CustomizationLearn everything about IBM iNotes Customization
Learn everything about IBM iNotes CustomizationIBM Connections Developers
 
How to use the Social Business Development Environments
How to use the Social Business Development EnvironmentsHow to use the Social Business Development Environments
How to use the Social Business Development EnvironmentsIBM Connections Developers
 
How to extend IBM Connections Communities and Profiles
How to extend IBM Connections Communities and ProfilesHow to extend IBM Connections Communities and Profiles
How to extend IBM Connections Communities and ProfilesIBM Connections Developers
 
Social Applications made easy with the new Social Business Toolkit SDK
Social Applications made easy with the new Social Business Toolkit SDKSocial Applications made easy with the new Social Business Toolkit SDK
Social Applications made easy with the new Social Business Toolkit SDKIBM Connections Developers
 

Más de IBM Connections Developers (20)

Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
 
IBM Connect 2014 - AD204: What's new in the IBM Domino Objects: By Example
IBM Connect 2014 - AD204: What's new in the IBM Domino Objects: By ExampleIBM Connect 2014 - AD204: What's new in the IBM Domino Objects: By Example
IBM Connect 2014 - AD204: What's new in the IBM Domino Objects: By Example
 
IBM Connect 2014 - AD302: New Ways to Work With Your IBM Connections Communities
IBM Connect 2014 - AD302: New Ways to Work With Your IBM Connections CommunitiesIBM Connect 2014 - AD302: New Ways to Work With Your IBM Connections Communities
IBM Connect 2014 - AD302: New Ways to Work With Your IBM Connections Communities
 
IBM Connect 2014 - AD105: IBM iNotes and IBM SmartCloud Notes Web Customizati...
IBM Connect 2014 - AD105: IBM iNotes and IBM SmartCloud Notes Web Customizati...IBM Connect 2014 - AD105: IBM iNotes and IBM SmartCloud Notes Web Customizati...
IBM Connect 2014 - AD105: IBM iNotes and IBM SmartCloud Notes Web Customizati...
 
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocialIBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
IBM Connect 2014 - JMP103: Extending Your Application Arsenal With OpenSocial
 
IBM Connect 2014 - BPD406: Ignite your IBM SmartCloud for Social Business Int...
IBM Connect 2014 - BPD406: Ignite your IBM SmartCloud for Social Business Int...IBM Connect 2014 - BPD406: Ignite your IBM SmartCloud for Social Business Int...
IBM Connect 2014 - BPD406: Ignite your IBM SmartCloud for Social Business Int...
 
IBM Connect 2014 - SHOW501: Mastering Social Development Using the IBM Collab...
IBM Connect 2014 - SHOW501: Mastering Social Development Using the IBM Collab...IBM Connect 2014 - SHOW501: Mastering Social Development Using the IBM Collab...
IBM Connect 2014 - SHOW501: Mastering Social Development Using the IBM Collab...
 
IBM Connect 2014 - BP207: Don’t Reinvent the Wheel – (Re)use Open Source Soft...
IBM Connect 2014 - BP207: Don’t Reinvent the Wheel – (Re)use Open Source Soft...IBM Connect 2014 - BP207: Don’t Reinvent the Wheel – (Re)use Open Source Soft...
IBM Connect 2014 - BP207: Don’t Reinvent the Wheel – (Re)use Open Source Soft...
 
IBM Connect 2014 - AD301: What’s New on the IBM Social Business Toolkit Versi...
IBM Connect 2014 - AD301: What’s New on the IBM Social Business Toolkit Versi...IBM Connect 2014 - AD301: What’s New on the IBM Social Business Toolkit Versi...
IBM Connect 2014 - AD301: What’s New on the IBM Social Business Toolkit Versi...
 
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...
IBM Connect 2014 - AD206: Build Apps Rapidly by Leveraging Services from IBM ...
 
IBM Connect 2014 - KEY108: IBM Collaboration Solutions Application Developmen...
IBM Connect 2014 - KEY108: IBM Collaboration Solutions Application Developmen...IBM Connect 2014 - KEY108: IBM Collaboration Solutions Application Developmen...
IBM Connect 2014 - KEY108: IBM Collaboration Solutions Application Developmen...
 
Programmatic Access to and Extensibility of the IBM SmartCloud for Social Bus...
Programmatic Access to and Extensibility of the IBM SmartCloud for Social Bus...Programmatic Access to and Extensibility of the IBM SmartCloud for Social Bus...
Programmatic Access to and Extensibility of the IBM SmartCloud for Social Bus...
 
Technology to deliver Exceptional Social Digital Experiences
Technology to deliver Exceptional Social Digital ExperiencesTechnology to deliver Exceptional Social Digital Experiences
Technology to deliver Exceptional Social Digital Experiences
 
What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1
 
The Power of IBM SmartCloud for Social Business and XPages App Dev
The Power of IBM SmartCloud for Social Business and XPages App DevThe Power of IBM SmartCloud for Social Business and XPages App Dev
The Power of IBM SmartCloud for Social Business and XPages App Dev
 
Learn everything about IBM iNotes Customization
Learn everything about IBM iNotes CustomizationLearn everything about IBM iNotes Customization
Learn everything about IBM iNotes Customization
 
How to use the Social Business Development Environments
How to use the Social Business Development EnvironmentsHow to use the Social Business Development Environments
How to use the Social Business Development Environments
 
How to extend IBM Connections Communities and Profiles
How to extend IBM Connections Communities and ProfilesHow to extend IBM Connections Communities and Profiles
How to extend IBM Connections Communities and Profiles
 
Open Standards For Social Business Apps
Open Standards For Social Business AppsOpen Standards For Social Business Apps
Open Standards For Social Business Apps
 
Social Applications made easy with the new Social Business Toolkit SDK
Social Applications made easy with the new Social Business Toolkit SDKSocial Applications made easy with the new Social Business Toolkit SDK
Social Applications made easy with the new Social Business Toolkit SDK
 

Último

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 

Último (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 

How to access the Activity Stream in IBM Connections

  • 1. Accessing the Activity Stream in IBM Connections How best to access and some common usage patterns. Bill Looby, Social Software Architect, IBM Connections IBM SBT Webinar 08/28/13 Francis Moloney, Software Engineer, Social Business Toolkit
  • 2. © 2013 IBM Corporation2 Future Webinars Tentatively: ● September 25th: Development Environments – Quick Start Image, IBM Greenhouse, IBM SmartCloud for Social Business
  • 3. © 2013 IBM Corporation IBM Connections App Dev Contest ● http://connectionscontest.openntf.org ● Chance to win 5 x $1000 ● Submit your open source project until November 3rd ● All types of OpenNTF projects can be nominated that utilize IBM Connections ● Developers can use a free shared development environment in the cloud
  • 4. © 2013 IBM Corporation4 Disclaimers 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.
  • 5. Using the Social Business Toolkit Demo
  • 7. © 2013 IBM Corporation7 A simple event URL http://.../activitystreams/@me/@all Header Content-Type : application/json Content { "actor": { "id": "@me" }, "verb": "share", "title": "${share}", "object": { "summary": "A totally new way of looking at things", "id": "thisid", "displayName": "Something Interesting", "url": "http://w3.ibm.com" }, }
  • 8. © 2013 IBM Corporation8 Adding a generator Content { "generator": { "image": {"url": "http://.../...news.png"}, "id": "DemoApp1", "displayName": "Demo Application", "url": "http://www.ibm.com/" }, "actor": { "id": "@me" }, "verb": "share", "title": "${share}", "object": { "summary": "A totally new way of looking at things", "id": "thisid", "displayName": "Something Interesting", "url": "http://w3.ibm.com" } } Notes : ● The icon is displayed scaled down ● The generator name is displayed on hover
  • 9. © 2013 IBM Corporation9 Adding a comment Content { "actor": {...}, "verb": "comment", "title": "${comment}", "object": { "summary": "This is definitely interesting", "id": "commentid", "objectType": "comment", "displayName": "Definitely interesting", "url": "http://w3.ibm.com" }, "target": { "summary": "A totally new way of looking at things", "id": "thisid", "displayName": "Something Interesting", "url": "http://w3.ibm.com" }, "connections": { "rollupid": "thisid" Notes : ● The Target is the previous Object ! ● The rollupid is needed so we know not to display separately ● The objectType is key for embedded display
  • 10. © 2013 IBM Corporation10 Adding some formatted text Content { "actor": { "id": "@me" }, "verb": "share", "title": "${share}", "content":"<table><tr><td><i>Click on this entry to launch the embedded experience and see details and event history<p/><b>Note :</b> This is the default experience</i></td><td><img src="http://inspirationalgadget.googlecode.com/s vn/trunk/images/misty.jpg"></td></tr></table>", "object": { "summary": "A totally new way of looking at things", "id": "thisid", "displayName": "Something Interesting", "url": "http://w3.ibm.com" } } Notes : ● We display both content and object summary ● We filter trim all HTML for security and display reasons.
  • 11. © 2013 IBM Corporation11 And adding an embedded experience Content { "actor": { "id": "@me" }, "verb": "share", "title": "${share}", "content":"...", "object": { "summary": "A totally new way of looking at things", ... }, "openSocial": { "embed": { "gadget": "http://inspirationalgadget.googlecode.com/svn/tr unk/wisdom.xml", "context": {"id":"12345"} } } }
  • 13. Basic requirements Use Cases ● Public News ● Huge discounts on SmartStay hotels ● Actions ● Your flight has been rescheduled. Please approve or cancel ● Follow travel topics ● Train strike in Italy ● Follow people travelling ● John Smith has recommended travelling in France ● Travel Community ● We now support TopHotels in Australia Things to consider ● Who is sending the event ? ● What id is used ? ● Who is the actor ? ● Is there one clearly defined ? ● What is the main 'object' ? ● Is it a country ? An airline ? A trip ? ● Who should receive the event ? ● . . . and is it public ● What do I want to say in the event ? ● . . . and how much detail will I provide ?
  • 14. © 2013 IBM Corporation14 Public News : Huge Discounts on SmartStay hotels ● Who is sending the event ● We want this to be public, so it has to be a trusted user* or the actor. ● Who is the actor ● Most likely it is a System User called 'Travel System as there is no real user. ● What is the main 'object' ● If you want to roll up news (i.e. show only the latest on this topic) keep track of the topic. ● Who should receive the event ● @public ● What do I want to say in the event ● As much as you like, but it's best to show an interesting summary and provide a link back to the travel app for the full story * A trusted user is any user in the trustedExternalApplication role. URL http://.../activitystreams/@public/@all Content { "actor": { "id": "userIdForTravelSystem" }, "verb": "post", "title": "${post}", "object": { "summary": "Huge discounts are currently available on SmartStayHotels. Book soon !", "id": "smartstay:123", "displayName": "SmartStay Discounts", "url": "http://www.aroundtheworldsample.com/123" }, }
  • 15. © 2013 IBM Corporation15 Public News : Huge Discounts on SmartStay hotels ● The event appears under discover ● If you want it on a users stream aswell, you will need to distribute to both. ● The image for the Travel System user appears. ● You will need to create this user ● You should also assign them the trustedExternalApplication rôle (you'll need this later) ● The title is 'SmartStay Discounts' ● You could add more meaning but you may want to roll up discounts on SmartStay hotels together.
  • 16. © 2013 IBM Corporation16 Actions : Your flight has been rescheduled ● Who is sending the event ● This is a private event, so you can send as a system user or using Oauth, authorised to access the users stream. ● Who is the actor ● Most likely it is a System User called 'Travel System as there is no real user. ● What is the main 'object' ● A 'travel plans' object. ● Who should receive the event ● The relevant user ● What do I want to say in the event ● Either provide a link or ideally an embedded experience. URL http://.../activitystreams/<userid>/@all Content { . . . "verb": "update", "title": "${update}", "object": { "summary": "Your flight has been rescheduled", "id": "travel:123", "displayName": "Travel to Madrid", }, "openSocial": { "embed": { "gadget": "http://.../travel.xml", "context": {"id":"travel:123"} } }, "connections": { "actionable": true
  • 17. © 2013 IBM Corporation17 Actions : Your flight has been rescheduled ● The event appears under Action Required in the users stream ● It will also update the 'badge' ● The example shown uses simple links ● These could link to the Travel System page for accept or cancel ● However these aren't needed if you have the EE ● On click, a user can be shown more information and given accept and cancel buttons.
  • 18. © 2013 IBM Corporation18 Follow travel topics : Train strike in Italy ● Who is sending the event ● This event is likely going to multiple users (anyone following) so a trusted sender should be used ● Who is the actor ● Whoever is updating the followed object (e.g. The poster if this is a post on an Italy travel forum) ● What is the main 'object' ● A 'Travel in Italy' travel object. ● Depends how you want to roll up ● Who should receive the event ● Anyone following the Italy travel object * ● What do I want to say in the event ● The news details URL http://.../activitystreams/<userid>/@all Content { "actor": { "id": "userIdForTravelSystem" }, "verb": "update", "title": "${update}", "object": { "summary": "Train Strike in Italy", "id": "smartstay:123", "displayName": "Travel in Italy", "url": "http://www.aroundtheworldsample.com/123" }, }
  • 19. © 2013 IBM Corporation19 Follow people travelling : John Smith has recommended travel in France ● Who is sending the event ● Either a trusted user or John Smith (we'll be sending a public event) ● Who is the actor ● John Smith ● What is the main 'object' ● A 'France' travel object. ● Who should receive the event ● Send to @public – connections will distribute to John Smiths followers ● Can send to any followers of 'Travel in France' also ● What do I want to say in the event ● A summary of the travel in france object should be enough. URL http://.../activitystreams/@public/@all Content { "actor": { "id": "userIdForAroundTheWorld" }, "verb": "like", "title": "${like}", "object": { "summary": "Travelling in France in 2013", "id": "smartstay:123", "displayName": "Travel in France", "url": "http://www.aroundtheworldsample.com/123" }, }
  • 20. © 2013 IBM Corporation20 Travel community : We now support TopHotels in Australia ● Who is sending the event ● This event is going to a community so although any member can send an event (as long as they are the actor) a trusted sender should probably be used ● Who is the actor ● You could be forwarding user actions of interest to a community, or general travel information ● What is the main 'object' ● An 'Hotels in Australia' travel object possibly. ● Depends how you want to roll up ● Who should receive the event ● The community. Connections will distribute to anyone following the community ● What do I want to say in the event ● The news details URL http://.../activitystreams/<communityid>/@all Content { "actor": { "id": "userIdForTravelSystem" }, "verb": "update", "title": "${update}", "object": { "summary": "Hotels in Australia", "id": "smartstay:123", "displayName": "We now support TopHotels in Australia. You can book through normal chanels", "url": "http://www.aroundtheworldsample.com/123" }, }
  • 22. © 2013 IBM Corporation22 Using a system user to access ● Oauth allows us to access on behalf of every user individually ● Could access for each user ● But this tends to be impractical and slow ● More practical to create a User to send events ● . . . can work quite well as an Actor ● . . . you get to look at the profile ● . . . and the user can be followed
  • 23. © 2013 IBM Corporation23 Distributing events ● Typically, an event can be sent to . . . ● @public – if anyone can see and should be able to discover ● A set of users who have recorded an interest in the object ● A user at whom the event is actually directed (this is generally the only recipient) ● Any associated community (if there is a means of expressing that association) { openSocial : { "deliverTo":[ {"objectType":"person", "id":"thiscompany:id"}, {"objectType":"person", "id":"@public"}, ] }, "verb":"post", ... } }
  • 24. © 2013 IBM Corporation24 Batching events ● For performance reasons it's generally more efficient to send a number of events at once. ● This can be done by sending all the events in a single array. ● Typically this is easier to do as a trusted user as you may be sending to multiple streams. [ {"actor":{"id":"abc"}, "verb": "post", "object":{"id":"a"}, }, {"actor":{"id":"abc"}, "verb": "share", "object":{"id":"b"}, }, {"actor":{"id":"xyz"}, "verb": "update", "object":{"id":"b"}, } ]
  • 25. Activity Streams and Microblogging
  • 26. © 2013 IBM Corporation26 Comparing Activity Streams and Microblogging ● Activity Streams don't 'own content ● Activity Streams don't support their own commenting and recommendations ● Activity Streams use the Activity Stream API to POST ● Activity Streams use the Activity Stream API to GET Wikis Blogs Others AS API ● Microblogging owns content ● Microblogging supports comments and recommendations ● Microblogging use the Microblogging API to POST ● Microblogging use the Activity Stream API to GET Ublog Ublog API AS API
  • 27. © 2013 IBM Corporation27 Resources and Questions ● Home page: http://ibmdw.net/social ● SDK: http://ibmsbt.openntf.org ● GitHub: https://github.com/OpenNTF/SocialSDK ● StackOverflow: #ibmsbt ● Twitter: @ibmsbt ● YouTube: http://youtube.com/ibmsbt ● Playground: http://bit.ly/sbtplayground
  • 28. © 2013 IBM Corporation28 Acknowledgements and Disclaimers © Copyright IBM Corporation 2013. All rights reserved. – U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. IBM, the IBM logo, ibm.com, Rational, the Rational logo, Telelogic, the Telelogic logo, Green Hat, the Green Hat logo, and other IBM products and services are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml Other company, product, or service names may be trademarks or service marks of others. Availability: 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. The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation 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. 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. 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.