SlideShare uma empresa Scribd logo
1 de 42
Connect your Lotus Notes app to
the Activity Stream with XPages
Frank van der Linden
Agenda

•   Introduction
•   Social Business
•   oAuth and OpenSocial
•   Let‟s connect to the Activity Stream
•   Post to the Activity Stream
•   Delete from the Activity Stream
•   Q&A
•   Usefull links
Who is Frank van der Linden
• I live in Utrecht in the Netherlands.
• My role is XPages/Domino/Web
  developer at e-office since 2000.
  So I started with Lotus Notes 4.5.x.
• I develop XPages application since
  the introduction of XPages in Lotus
  Notes 8.5.0.
• In my spare time I do a lot of
  running and then I mean a lot.
• And I am married and have 2
  daughters
And he works at e-office
• Celebrated in 2011 it‟s 20ste
  anniversary
• First Lotus Business Partner in
  the Netherlands
• E-office is IBM Premier Business
  Partner, Microsoft Gold Partner
  and RIM Alliance Elite partner
Agenda

•   Introduction
•   Social Business Toolkit
•   oAuth and OpenSocial
•   Let‟s connect to the Activity Stream
•   Post to the Activity Stream
•   Delete from the Activity Stream
•   Q&A
•   Usefull links
Social Business Toolkit

•   Manage all your daily business in one stream
•   Also your mail and to-do's
•   Easy to connect by providing API‟s
•   It will be integrated in IBM Connections Next
    and Lotus Notes Next
Activity Stream - intro
• It is part of the Social business
  Toolkit
• It is the stream of all information
• API‟s to connect to the stream
• It will part of IBM Connections
  Next and Lotus Notes Social
  Edition.
• oAuth authentication.
• Support of OpenSocial gadget
  specification.
Agenda

•   Introduction
•   Social Business Tookit
•   oAuth and OpenSocial
•   Let‟s connect to the Activity Stream
•   Post to the Activity Stream
•   Delete from the Activity Stream
•   Q&A
•   Usefull links
What is oAuth
• OAuth (Open Authorization) is an open standard for
  authorization
• It allows users to share their resources stored on one
  site with another site without having to hand out their
  credentials
• OAuth allows users to hand out tokens instead of
  credentials to their data hosted by a given service
  provider.




Source: http://en.wikipedia.org/wiki/OAuth
oAuth, the 3 leg dance
oAuth in the real world
OpenSocial
• Public specification that defines a
  component hosting environment (container)
• Based on HTML and Javascript, as well as
  the Google gadgets framework
• OpenSocial adopted support for Activity
  Streams format
• OpenSocial API and oAuth support




Source:http://en.wikipedia.org/wiki/OpenSocial
Agenda

•   Introduction
•   Social Business Toolkit
•   oAuth and OpenSocial
•   Let‟s connect to the Activity Stream
•   Post to the Activity Stream
•   Delete from the Activity Stream
•   Q&A
•   Usefull links
Get started – get access to Greenhouse
• If you don‟t have an account for Greenhouse, go get it
  (https://greenhouse.lotus.com)
Get started – Register your app

• oAuth is used, so you need to register your
  app.(https://greenhouse.lotus.com/vulcan/sec
  urity/provider/appList?serviceProvider=vulcan
  Toolkit)
Get started – Get the databases
• Get the Extension Library of OpenNTF, the 8.5.3 code stream
• Install the Extension Library on Designer and Domino server
• Deploy the Social Enabler database to your Domino server

• Deploy the WebsecurityStore database to the root of your
  Domino server

• And sign both databases with the correct ID.
Get started – Go to the Websecurity store
• The startpoint is KeysApplications.xsp
Get started – Fill in the oAuth keys




•   https://greenhouse.lotus.com:443/vulcan/security/provider/requestToken
    https://greenhouse.lotus.com:443/vulcan/security/provider/authorize
    https://greenhouse.lotus.com:443/vulcan/security/provider/accessToken
In to the code – Faces-config.xml

• This file lists bean
  resources and navigation
  rules
• It is located in the WEB-
  INF folder in the package
  explorer.
Faces-config.xml - NSFStore
• NSFStore managed bean is used for the location of the
  websecurity database
• It will be used by other Managed beans to store oAuth
  data.
Faces-config.xml – greenHouse managed
bean
• greenHouse managed bean is used to specify the
  oAuthEndpoint, and were to store.
• AppId is the id, who is used as Application name in the
  SBT application registration page
How to get the entries of the Activity Stream

• Create a XPage, and name it
  „ActivityStream‟
• Drop a viewpanel on this XPage
• Select Datasource later
• Goto the all properties and select
  as datasource the
  ActivityStreamData.
How to get the entries of the Activity Stream

• The service URL: vulcan/shindig/rest/activitystreams
• Endpoint: greenHouse, as stated in the Faces-config.xml
• Give the datasource a variable name, so you can connect
  to it in your ViewPanel
• Specify in your ViewPanel as value the variable name of
  the datasource
• And give the ViewPanel also a variable name
Get the actual data out of the stream

• Add column to the ViewPanel
• Set of the viewcolumn value to “”;
• Add an computed text and add toJson(entry,false)




• If you preview the Xpage, you will get plain JSON




•   (accessing the Activity Stream for the 1st time, you will need to grant
    access your application to the Social Business Toolkit)
JSON - some usefull properties

• Title: entry.title
• Posted date: new
  java.util.Date(parseInt(entry.postedTime)
• ID: entry.id
• Image: entry.actor.image.url
• Body: entry.body
• JSON of the links to the source:
  entry.standardLinks.alternate[0].inline
Agenda

•   Introduction
•   Social Business Toolkit
•   oAuth and OpenSocial
•   Let‟s connect to the Activity Stream
•   Post to the Activity Stream
•   Delete from the Activity Stream
•   Q&A
•   Usefull links
Post to the Activity Stream

• Create a „classic‟ Form, with 2 fields
Post to the Activity Stream

• Create a gadget.xml file in the resources
Post to the Activity Stream

• Create XPages and make binding to the Demo form.
Post to the Activity Stream

• Add ObjectData control to the XPage
• ObjectData has 2 components
    CreateObject: to compose the object JSON
    SaveObject: save the object to an url.
Post to the Activity Stream

• Save the datasources
      First save datasource linked to notes document
      Collect some field values, e.g. documentUniqueID
      Add values to ObjectData
      Save datasource linked to ObjectData
Post to the Activity Stream

• Imported coding to define the OpenSocial gadget syntax
    {"ee:context":"{"bookmarkTitle":"EntwicklerCamp2012","xPageUrl":"
     http://ld09.e-
     office.com/entwicklercamp//demoAS.nsf/demo.xsp?id="+document1
     .getDocument().getUniversalID()+""}","ee:component-
     definition":"http://ld09.e-
     office.com/entwicklercamp/demoAS.nsf/gadget.xml"}
Post to the Activity Stream

• Refresh Activity Stream
• Click the new entry and you will see the embedded
  experience
Agenda

•   Introduction
•   Social Business
•   oAuth and OpenSocial
•   Let‟s connect to the Activity Stream
•   Post to the Activity Stream
•   Delete from the Activity Stream
•   Q&A
•   Usefull links
Delete from the Activity Stream
• Create a Custom Control for the Delete Button
• Add custom properties
    objectID, identification of entry in ActivityStream
    refreshID, component to refresh after delete Action
Delete from the Activity Stream
• Add ObjectData control to Custom Control
• ObjectData has 2 components
    CreateObject: to compose the object JSON
    SaveObject: save the object to an url.
Delete from the Activity Stream
• The service URL:
  /vulcan/shindig/rest/activitystreams/@me/@all/@all?X-HTTP-
  Method-
  Override=DELETE&activityEntryId="+compositeData.objectID
• Endpoint: greenHouse, as stated in the Faces-config.xml
Delete from the Activity Stream
• Add button control to the Custom Control.
• And add onClick event to save datasource and refresh the
  viewpanel
Delete from the Activity Stream
• Go back to the Activity Stream XPage
• Add Delete Action Custom Control to the ViewColum
• Pass some custom properties to identify the entry and for the
  partial refresh
Q&A
Usefull links

• OpenNTF Extention Library
   http://extlib.openntf.org/
• Social Business Toolkit Activity Stream
   https://greenhouse.lotus.com/activitystream/
How to reach me

• Twitter: @flinden68
• Blog: http://www.domino-weblog.nl/
• E-mail: fli@e-office.com

Mais conteúdo relacionado

Mais procurados

Your App Deserves More – The Art of App Modernization
Your App Deserves More – The Art of App ModernizationYour App Deserves More – The Art of App Modernization
Your App Deserves More – The Art of App ModernizationKlaus Bild
 
Dealing with and learning from the sandbox
Dealing with and learning from the sandboxDealing with and learning from the sandbox
Dealing with and learning from the sandboxElaine Van Bergen
 
Migrating to Microsoft Office 365
Migrating to Microsoft Office 365Migrating to Microsoft Office 365
Migrating to Microsoft Office 365OpenText Global 360
 
Chris O'Brien - Ignite 2019 announcements and selected roadmaps
Chris O'Brien - Ignite 2019 announcements and selected roadmapsChris O'Brien - Ignite 2019 announcements and selected roadmaps
Chris O'Brien - Ignite 2019 announcements and selected roadmapsChris O'Brien
 
IBM Connect 2017: Refresh and Extend IBM Domino Applications
IBM Connect 2017: Refresh and Extend IBM Domino ApplicationsIBM Connect 2017: Refresh and Extend IBM Domino Applications
IBM Connect 2017: Refresh and Extend IBM Domino ApplicationsEd Brill
 
ecs19 - Bill Ayers - RE-USE YOUR SHAREPOINT FRAMEWORK SKILLZ TO BUILD OFFICE ...
ecs19 - Bill Ayers - RE-USE YOUR SHAREPOINT FRAMEWORK SKILLZ TO BUILD OFFICE ...ecs19 - Bill Ayers - RE-USE YOUR SHAREPOINT FRAMEWORK SKILLZ TO BUILD OFFICE ...
ecs19 - Bill Ayers - RE-USE YOUR SHAREPOINT FRAMEWORK SKILLZ TO BUILD OFFICE ...European Collaboration Summit
 
What's new in sharepoint 2016
What's new in sharepoint 2016What's new in sharepoint 2016
What's new in sharepoint 2016Mike Maadarani
 
SharePoint 2016 Is Coming! Are You Ready?
SharePoint 2016 Is Coming! Are You Ready?SharePoint 2016 Is Coming! Are You Ready?
SharePoint 2016 Is Coming! Are You Ready?Richard Harbridge
 
. Design Decisions: Developing for Mobile - The Template Experience Project
. Design Decisions: Developing for Mobile - The Template Experience Project. Design Decisions: Developing for Mobile - The Template Experience Project
. Design Decisions: Developing for Mobile - The Template Experience ProjectGabriella Davis
 
ECS19 - Johan Delimon - Keep your Skype for Business Hybrid working like a ch...
ECS19 - Johan Delimon - Keep your Skype for Business Hybrid working like a ch...ECS19 - Johan Delimon - Keep your Skype for Business Hybrid working like a ch...
ECS19 - Johan Delimon - Keep your Skype for Business Hybrid working like a ch...European Collaboration Summit
 
Improving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationImproving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationSharePoint Saturday New Jersey
 
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...European Collaboration Summit
 
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Bram de Jager
 
[McDermott] Configuring SharePoint Hybrid Search and Taxonomy
[McDermott] Configuring SharePoint Hybrid Search and Taxonomy[McDermott] Configuring SharePoint Hybrid Search and Taxonomy
[McDermott] Configuring SharePoint Hybrid Search and TaxonomyEuropean Collaboration Summit
 
SharePoint 2016 Beta 2 What's new (End users and IT Pros) Microsoft Innovat...
SharePoint 2016   Beta 2 What's new (End users and IT Pros) Microsoft Innovat...SharePoint 2016   Beta 2 What's new (End users and IT Pros) Microsoft Innovat...
SharePoint 2016 Beta 2 What's new (End users and IT Pros) Microsoft Innovat...serge luca
 

Mais procurados (20)

Worldwide Deployment
Worldwide DeploymentWorldwide Deployment
Worldwide Deployment
 
Your App Deserves More – The Art of App Modernization
Your App Deserves More – The Art of App ModernizationYour App Deserves More – The Art of App Modernization
Your App Deserves More – The Art of App Modernization
 
Dealing with and learning from the sandbox
Dealing with and learning from the sandboxDealing with and learning from the sandbox
Dealing with and learning from the sandbox
 
Migrating to Microsoft Office 365
Migrating to Microsoft Office 365Migrating to Microsoft Office 365
Migrating to Microsoft Office 365
 
Chris O'Brien - Ignite 2019 announcements and selected roadmaps
Chris O'Brien - Ignite 2019 announcements and selected roadmapsChris O'Brien - Ignite 2019 announcements and selected roadmaps
Chris O'Brien - Ignite 2019 announcements and selected roadmaps
 
IBM Connect 2017: Refresh and Extend IBM Domino Applications
IBM Connect 2017: Refresh and Extend IBM Domino ApplicationsIBM Connect 2017: Refresh and Extend IBM Domino Applications
IBM Connect 2017: Refresh and Extend IBM Domino Applications
 
ecs19 - Bill Ayers - RE-USE YOUR SHAREPOINT FRAMEWORK SKILLZ TO BUILD OFFICE ...
ecs19 - Bill Ayers - RE-USE YOUR SHAREPOINT FRAMEWORK SKILLZ TO BUILD OFFICE ...ecs19 - Bill Ayers - RE-USE YOUR SHAREPOINT FRAMEWORK SKILLZ TO BUILD OFFICE ...
ecs19 - Bill Ayers - RE-USE YOUR SHAREPOINT FRAMEWORK SKILLZ TO BUILD OFFICE ...
 
What's new in sharepoint 2016
What's new in sharepoint 2016What's new in sharepoint 2016
What's new in sharepoint 2016
 
ECS19 - Jussi Roine - Microsoft 365 Deep Dive
ECS19 - Jussi Roine - Microsoft 365 Deep DiveECS19 - Jussi Roine - Microsoft 365 Deep Dive
ECS19 - Jussi Roine - Microsoft 365 Deep Dive
 
SharePoint 2016 Is Coming! Are You Ready?
SharePoint 2016 Is Coming! Are You Ready?SharePoint 2016 Is Coming! Are You Ready?
SharePoint 2016 Is Coming! Are You Ready?
 
. Design Decisions: Developing for Mobile - The Template Experience Project
. Design Decisions: Developing for Mobile - The Template Experience Project. Design Decisions: Developing for Mobile - The Template Experience Project
. Design Decisions: Developing for Mobile - The Template Experience Project
 
[Delimon] Unraveling Teams vs Skype for Business
[Delimon] Unraveling Teams vs Skype for Business[Delimon] Unraveling Teams vs Skype for Business
[Delimon] Unraveling Teams vs Skype for Business
 
ECS19 - Johan Delimon - Keep your Skype for Business Hybrid working like a ch...
ECS19 - Johan Delimon - Keep your Skype for Business Hybrid working like a ch...ECS19 - Johan Delimon - Keep your Skype for Business Hybrid working like a ch...
ECS19 - Johan Delimon - Keep your Skype for Business Hybrid working like a ch...
 
Improving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationImproving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous Integration
 
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...
 
Sharepoint Online
Sharepoint OnlineSharepoint Online
Sharepoint Online
 
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
 
[McDermott] Configuring SharePoint Hybrid Search and Taxonomy
[McDermott] Configuring SharePoint Hybrid Search and Taxonomy[McDermott] Configuring SharePoint Hybrid Search and Taxonomy
[McDermott] Configuring SharePoint Hybrid Search and Taxonomy
 
SharePoint 2016 Beta 2 What's new (End users and IT Pros) Microsoft Innovat...
SharePoint 2016   Beta 2 What's new (End users and IT Pros) Microsoft Innovat...SharePoint 2016   Beta 2 What's new (End users and IT Pros) Microsoft Innovat...
SharePoint 2016 Beta 2 What's new (End users and IT Pros) Microsoft Innovat...
 
ECS19 - Robi Voncina - Upgrade to SharePoint 2019
ECS19 - Robi Voncina - Upgrade to SharePoint 2019ECS19 - Robi Voncina - Upgrade to SharePoint 2019
ECS19 - Robi Voncina - Upgrade to SharePoint 2019
 

Semelhante a Entwickler camp2012 how to connect your app to the activity stream with x_pages

No need to leave Connections. Bring your Domino applications into the Activit...
No need to leave Connections. Bring your Domino applications into the Activit...No need to leave Connections. Bring your Domino applications into the Activit...
No need to leave Connections. Bring your Domino applications into the Activit...LetsConnect
 
Microsoft flow how, when & why
Microsoft flow   how, when & whyMicrosoft flow   how, when & why
Microsoft flow how, when & whyDocFluix, LLC
 
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite Keiko Ogura
 
OpenSocial and Mixi platform
OpenSocial and Mixi platformOpenSocial and Mixi platform
OpenSocial and Mixi platformPham Thinh
 
Best practices for migrating from SharePoint Designer to Power Automate
Best practices for migrating from SharePoint Designer to Power AutomateBest practices for migrating from SharePoint Designer to Power Automate
Best practices for migrating from SharePoint Designer to Power AutomateWilliam Huneycutt, II
 
Drew madelung sp designer workflows - sp-biz
Drew madelung   sp designer workflows - sp-bizDrew madelung   sp designer workflows - sp-biz
Drew madelung sp designer workflows - sp-bizDrew Madelung
 
Logic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIsLogic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIsSriram Hariharan
 
#SPSHouston Automating your digital workplace proivisioning with #Azure Durab...
#SPSHouston Automating your digital workplace proivisioning with #Azure Durab...#SPSHouston Automating your digital workplace proivisioning with #Azure Durab...
#SPSHouston Automating your digital workplace proivisioning with #Azure Durab...Vincent Biret
 
Odata V4 : The New way to REST for Your Applications
Odata V4 : The New way to REST for Your Applications Odata V4 : The New way to REST for Your Applications
Odata V4 : The New way to REST for Your Applications Alok Chhabria
 
SharePoint for Project Management (2016)
SharePoint for Project Management (2016)SharePoint for Project Management (2016)
SharePoint for Project Management (2016)wandersick
 
UiPath Community - Dallas - Studio Web.pdf
UiPath Community - Dallas - Studio Web.pdfUiPath Community - Dallas - Studio Web.pdf
UiPath Community - Dallas - Studio Web.pdfDianaGray10
 
There’s an API for that! Why and how to build on the IBM Connections PLATFORM
There’s an API for that! Why and how to build on the IBM Connections PLATFORMThere’s an API for that! Why and how to build on the IBM Connections PLATFORM
There’s an API for that! Why and how to build on the IBM Connections PLATFORMMikkel Flindt Heisterberg
 
SharePoint Designer Workflows - Nuts, Bolts and Examples
SharePoint Designer Workflows - Nuts, Bolts and ExamplesSharePoint Designer Workflows - Nuts, Bolts and Examples
SharePoint Designer Workflows - Nuts, Bolts and ExamplesDrew Madelung
 
Share point development 101
Share point development 101Share point development 101
Share point development 101Becky Bertram
 
IBM Social Business Toolkit
IBM Social Business ToolkitIBM Social Business Toolkit
IBM Social Business ToolkitVan Staub, MBA
 
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsBuilding Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsPrashant G Bhoyar (Microsoft MVP)
 
An introduction to the office devpnp community initiative
An introduction to the office devpnp community initiativeAn introduction to the office devpnp community initiative
An introduction to the office devpnp community initiativeNigel Price
 

Semelhante a Entwickler camp2012 how to connect your app to the activity stream with x_pages (20)

No need to leave Connections. Bring your Domino applications into the Activit...
No need to leave Connections. Bring your Domino applications into the Activit...No need to leave Connections. Bring your Domino applications into the Activit...
No need to leave Connections. Bring your Domino applications into the Activit...
 
Dnug2012 yellow and blue stream
Dnug2012 yellow and blue streamDnug2012 yellow and blue stream
Dnug2012 yellow and blue stream
 
Uklug2012 yellow and blue stream
Uklug2012 yellow and blue streamUklug2012 yellow and blue stream
Uklug2012 yellow and blue stream
 
Microsoft flow how, when & why
Microsoft flow   how, when & whyMicrosoft flow   how, when & why
Microsoft flow how, when & why
 
Blug2012 yellow and blue stream
Blug2012 yellow and blue streamBlug2012 yellow and blue stream
Blug2012 yellow and blue stream
 
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite
 
OpenSocial and Mixi platform
OpenSocial and Mixi platformOpenSocial and Mixi platform
OpenSocial and Mixi platform
 
Best practices for migrating from SharePoint Designer to Power Automate
Best practices for migrating from SharePoint Designer to Power AutomateBest practices for migrating from SharePoint Designer to Power Automate
Best practices for migrating from SharePoint Designer to Power Automate
 
Drew madelung sp designer workflows - sp-biz
Drew madelung   sp designer workflows - sp-bizDrew madelung   sp designer workflows - sp-biz
Drew madelung sp designer workflows - sp-biz
 
Logic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIsLogic apps and PowerApps - Integrate across your APIs
Logic apps and PowerApps - Integrate across your APIs
 
#SPSHouston Automating your digital workplace proivisioning with #Azure Durab...
#SPSHouston Automating your digital workplace proivisioning with #Azure Durab...#SPSHouston Automating your digital workplace proivisioning with #Azure Durab...
#SPSHouston Automating your digital workplace proivisioning with #Azure Durab...
 
Odata V4 : The New way to REST for Your Applications
Odata V4 : The New way to REST for Your Applications Odata V4 : The New way to REST for Your Applications
Odata V4 : The New way to REST for Your Applications
 
SharePoint for Project Management (2016)
SharePoint for Project Management (2016)SharePoint for Project Management (2016)
SharePoint for Project Management (2016)
 
UiPath Community - Dallas - Studio Web.pdf
UiPath Community - Dallas - Studio Web.pdfUiPath Community - Dallas - Studio Web.pdf
UiPath Community - Dallas - Studio Web.pdf
 
There’s an API for that! Why and how to build on the IBM Connections PLATFORM
There’s an API for that! Why and how to build on the IBM Connections PLATFORMThere’s an API for that! Why and how to build on the IBM Connections PLATFORM
There’s an API for that! Why and how to build on the IBM Connections PLATFORM
 
SharePoint Designer Workflows - Nuts, Bolts and Examples
SharePoint Designer Workflows - Nuts, Bolts and ExamplesSharePoint Designer Workflows - Nuts, Bolts and Examples
SharePoint Designer Workflows - Nuts, Bolts and Examples
 
Share point development 101
Share point development 101Share point development 101
Share point development 101
 
IBM Social Business Toolkit
IBM Social Business ToolkitIBM Social Business Toolkit
IBM Social Business Toolkit
 
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsBuilding Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
 
An introduction to the office devpnp community initiative
An introduction to the office devpnp community initiativeAn introduction to the office devpnp community initiative
An introduction to the office devpnp community initiative
 

Mais de Frank van der Linden

Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Engage 2020: Hello are you listening, There is stream for everything
Engage 2020: Hello are you listening, There is stream for everythingEngage 2020: Hello are you listening, There is stream for everything
Engage 2020: Hello are you listening, There is stream for everythingFrank van der Linden
 
NCUG 2019: Super charge your API’s with Reactive streams
NCUG 2019: Super charge your API’s with Reactive streamsNCUG 2019: Super charge your API’s with Reactive streams
NCUG 2019: Super charge your API’s with Reactive streamsFrank van der Linden
 
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...Frank van der Linden
 
Engage 2019: The good, the bad and the ugly: a not so objective view on front...
Engage 2019: The good, the bad and the ugly: a not so objective view on front...Engage 2019: The good, the bad and the ugly: a not so objective view on front...
Engage 2019: The good, the bad and the ugly: a not so objective view on front...Frank van der Linden
 
Social connections14: Super charge your API’s with Reactive streams
Social connections14: Super charge your API’s with Reactive streamsSocial connections14: Super charge your API’s with Reactive streams
Social connections14: Super charge your API’s with Reactive streamsFrank van der Linden
 
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...Frank van der Linden
 
Spring forward: an introduction to Spring boot and Thymeleaf
Spring forward: an introduction to Spring boot and ThymeleafSpring forward: an introduction to Spring boot and Thymeleaf
Spring forward: an introduction to Spring boot and ThymeleafFrank van der Linden
 
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...Frank van der Linden
 
Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...
Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...
Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...Frank van der Linden
 
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...Frank van der Linden
 
A (XPages) developers guide to Cloudant - MeetIT
A (XPages) developers guide to Cloudant - MeetITA (XPages) developers guide to Cloudant - MeetIT
A (XPages) developers guide to Cloudant - MeetITFrank van der Linden
 
A (XPages) developers guide to Cloudant
A (XPages) developers guide to CloudantA (XPages) developers guide to Cloudant
A (XPages) developers guide to CloudantFrank van der Linden
 
Bccon use notes objects in memory and other useful
Bccon   use notes objects in memory and other usefulBccon   use notes objects in memory and other useful
Bccon use notes objects in memory and other usefulFrank van der Linden
 
Use notes objects in memory and other useful java tips for xpages development
Use notes objects in memory and other useful java tips for xpages developmentUse notes objects in memory and other useful java tips for xpages development
Use notes objects in memory and other useful java tips for xpages developmentFrank van der Linden
 
An XPager's Guide to Process Server-Side Jobs on Domino
An XPager's Guide to Process Server-Side Jobs on DominoAn XPager's Guide to Process Server-Side Jobs on Domino
An XPager's Guide to Process Server-Side Jobs on DominoFrank van der Linden
 

Mais de Frank van der Linden (20)

Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Engage 2020: Hello are you listening, There is stream for everything
Engage 2020: Hello are you listening, There is stream for everythingEngage 2020: Hello are you listening, There is stream for everything
Engage 2020: Hello are you listening, There is stream for everything
 
NCUG 2019: Super charge your API’s with Reactive streams
NCUG 2019: Super charge your API’s with Reactive streamsNCUG 2019: Super charge your API’s with Reactive streams
NCUG 2019: Super charge your API’s with Reactive streams
 
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...
 
Engage 2019: The good, the bad and the ugly: a not so objective view on front...
Engage 2019: The good, the bad and the ugly: a not so objective view on front...Engage 2019: The good, the bad and the ugly: a not so objective view on front...
Engage 2019: The good, the bad and the ugly: a not so objective view on front...
 
Social connections14: Super charge your API’s with Reactive streams
Social connections14: Super charge your API’s with Reactive streamsSocial connections14: Super charge your API’s with Reactive streams
Social connections14: Super charge your API’s with Reactive streams
 
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...
 
Spring forward: an introduction to Spring boot and Thymeleaf
Spring forward: an introduction to Spring boot and ThymeleafSpring forward: an introduction to Spring boot and Thymeleaf
Spring forward: an introduction to Spring boot and Thymeleaf
 
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
 
Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...
Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...
Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...
 
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...
 
A (XPages) developers guide to Cloudant - MeetIT
A (XPages) developers guide to Cloudant - MeetITA (XPages) developers guide to Cloudant - MeetIT
A (XPages) developers guide to Cloudant - MeetIT
 
A (XPages) developers guide to Cloudant
A (XPages) developers guide to CloudantA (XPages) developers guide to Cloudant
A (XPages) developers guide to Cloudant
 
Let's serve your data
Let's serve your dataLet's serve your data
Let's serve your data
 
Let's server your Data
Let's server your DataLet's server your Data
Let's server your Data
 
Don't worry with bower
Don't worry with bowerDon't worry with bower
Don't worry with bower
 
Bccon use notes objects in memory and other useful
Bccon   use notes objects in memory and other usefulBccon   use notes objects in memory and other useful
Bccon use notes objects in memory and other useful
 
Use notes objects in memory and other useful java tips for xpages development
Use notes objects in memory and other useful java tips for xpages developmentUse notes objects in memory and other useful java tips for xpages development
Use notes objects in memory and other useful java tips for xpages development
 
An XPager's Guide to Process Server-Side Jobs on Domino
An XPager's Guide to Process Server-Side Jobs on DominoAn XPager's Guide to Process Server-Side Jobs on Domino
An XPager's Guide to Process Server-Side Jobs on Domino
 
The power of dots
The power of dotsThe power of dots
The power of dots
 

Último

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 

Último (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 

Entwickler camp2012 how to connect your app to the activity stream with x_pages

  • 1. Connect your Lotus Notes app to the Activity Stream with XPages Frank van der Linden
  • 2. Agenda • Introduction • Social Business • oAuth and OpenSocial • Let‟s connect to the Activity Stream • Post to the Activity Stream • Delete from the Activity Stream • Q&A • Usefull links
  • 3. Who is Frank van der Linden • I live in Utrecht in the Netherlands. • My role is XPages/Domino/Web developer at e-office since 2000. So I started with Lotus Notes 4.5.x. • I develop XPages application since the introduction of XPages in Lotus Notes 8.5.0. • In my spare time I do a lot of running and then I mean a lot. • And I am married and have 2 daughters
  • 4. And he works at e-office • Celebrated in 2011 it‟s 20ste anniversary • First Lotus Business Partner in the Netherlands • E-office is IBM Premier Business Partner, Microsoft Gold Partner and RIM Alliance Elite partner
  • 5. Agenda • Introduction • Social Business Toolkit • oAuth and OpenSocial • Let‟s connect to the Activity Stream • Post to the Activity Stream • Delete from the Activity Stream • Q&A • Usefull links
  • 6. Social Business Toolkit • Manage all your daily business in one stream • Also your mail and to-do's • Easy to connect by providing API‟s • It will be integrated in IBM Connections Next and Lotus Notes Next
  • 7. Activity Stream - intro • It is part of the Social business Toolkit • It is the stream of all information • API‟s to connect to the stream • It will part of IBM Connections Next and Lotus Notes Social Edition. • oAuth authentication. • Support of OpenSocial gadget specification.
  • 8. Agenda • Introduction • Social Business Tookit • oAuth and OpenSocial • Let‟s connect to the Activity Stream • Post to the Activity Stream • Delete from the Activity Stream • Q&A • Usefull links
  • 9. What is oAuth • OAuth (Open Authorization) is an open standard for authorization • It allows users to share their resources stored on one site with another site without having to hand out their credentials • OAuth allows users to hand out tokens instead of credentials to their data hosted by a given service provider. Source: http://en.wikipedia.org/wiki/OAuth
  • 10. oAuth, the 3 leg dance
  • 11. oAuth in the real world
  • 12. OpenSocial • Public specification that defines a component hosting environment (container) • Based on HTML and Javascript, as well as the Google gadgets framework • OpenSocial adopted support for Activity Streams format • OpenSocial API and oAuth support Source:http://en.wikipedia.org/wiki/OpenSocial
  • 13. Agenda • Introduction • Social Business Toolkit • oAuth and OpenSocial • Let‟s connect to the Activity Stream • Post to the Activity Stream • Delete from the Activity Stream • Q&A • Usefull links
  • 14. Get started – get access to Greenhouse • If you don‟t have an account for Greenhouse, go get it (https://greenhouse.lotus.com)
  • 15. Get started – Register your app • oAuth is used, so you need to register your app.(https://greenhouse.lotus.com/vulcan/sec urity/provider/appList?serviceProvider=vulcan Toolkit)
  • 16. Get started – Get the databases • Get the Extension Library of OpenNTF, the 8.5.3 code stream • Install the Extension Library on Designer and Domino server • Deploy the Social Enabler database to your Domino server • Deploy the WebsecurityStore database to the root of your Domino server • And sign both databases with the correct ID.
  • 17. Get started – Go to the Websecurity store • The startpoint is KeysApplications.xsp
  • 18. Get started – Fill in the oAuth keys • https://greenhouse.lotus.com:443/vulcan/security/provider/requestToken https://greenhouse.lotus.com:443/vulcan/security/provider/authorize https://greenhouse.lotus.com:443/vulcan/security/provider/accessToken
  • 19. In to the code – Faces-config.xml • This file lists bean resources and navigation rules • It is located in the WEB- INF folder in the package explorer.
  • 20. Faces-config.xml - NSFStore • NSFStore managed bean is used for the location of the websecurity database • It will be used by other Managed beans to store oAuth data.
  • 21. Faces-config.xml – greenHouse managed bean • greenHouse managed bean is used to specify the oAuthEndpoint, and were to store. • AppId is the id, who is used as Application name in the SBT application registration page
  • 22. How to get the entries of the Activity Stream • Create a XPage, and name it „ActivityStream‟ • Drop a viewpanel on this XPage • Select Datasource later • Goto the all properties and select as datasource the ActivityStreamData.
  • 23. How to get the entries of the Activity Stream • The service URL: vulcan/shindig/rest/activitystreams • Endpoint: greenHouse, as stated in the Faces-config.xml • Give the datasource a variable name, so you can connect to it in your ViewPanel • Specify in your ViewPanel as value the variable name of the datasource • And give the ViewPanel also a variable name
  • 24. Get the actual data out of the stream • Add column to the ViewPanel • Set of the viewcolumn value to “”; • Add an computed text and add toJson(entry,false) • If you preview the Xpage, you will get plain JSON • (accessing the Activity Stream for the 1st time, you will need to grant access your application to the Social Business Toolkit)
  • 25. JSON - some usefull properties • Title: entry.title • Posted date: new java.util.Date(parseInt(entry.postedTime) • ID: entry.id • Image: entry.actor.image.url • Body: entry.body • JSON of the links to the source: entry.standardLinks.alternate[0].inline
  • 26. Agenda • Introduction • Social Business Toolkit • oAuth and OpenSocial • Let‟s connect to the Activity Stream • Post to the Activity Stream • Delete from the Activity Stream • Q&A • Usefull links
  • 27. Post to the Activity Stream • Create a „classic‟ Form, with 2 fields
  • 28. Post to the Activity Stream • Create a gadget.xml file in the resources
  • 29. Post to the Activity Stream • Create XPages and make binding to the Demo form.
  • 30. Post to the Activity Stream • Add ObjectData control to the XPage • ObjectData has 2 components  CreateObject: to compose the object JSON  SaveObject: save the object to an url.
  • 31. Post to the Activity Stream • Save the datasources  First save datasource linked to notes document  Collect some field values, e.g. documentUniqueID  Add values to ObjectData  Save datasource linked to ObjectData
  • 32. Post to the Activity Stream • Imported coding to define the OpenSocial gadget syntax  {"ee:context":"{"bookmarkTitle":"EntwicklerCamp2012","xPageUrl":" http://ld09.e- office.com/entwicklercamp//demoAS.nsf/demo.xsp?id="+document1 .getDocument().getUniversalID()+""}","ee:component- definition":"http://ld09.e- office.com/entwicklercamp/demoAS.nsf/gadget.xml"}
  • 33. Post to the Activity Stream • Refresh Activity Stream • Click the new entry and you will see the embedded experience
  • 34. Agenda • Introduction • Social Business • oAuth and OpenSocial • Let‟s connect to the Activity Stream • Post to the Activity Stream • Delete from the Activity Stream • Q&A • Usefull links
  • 35. Delete from the Activity Stream • Create a Custom Control for the Delete Button • Add custom properties  objectID, identification of entry in ActivityStream  refreshID, component to refresh after delete Action
  • 36. Delete from the Activity Stream • Add ObjectData control to Custom Control • ObjectData has 2 components  CreateObject: to compose the object JSON  SaveObject: save the object to an url.
  • 37. Delete from the Activity Stream • The service URL: /vulcan/shindig/rest/activitystreams/@me/@all/@all?X-HTTP- Method- Override=DELETE&activityEntryId="+compositeData.objectID • Endpoint: greenHouse, as stated in the Faces-config.xml
  • 38. Delete from the Activity Stream • Add button control to the Custom Control. • And add onClick event to save datasource and refresh the viewpanel
  • 39. Delete from the Activity Stream • Go back to the Activity Stream XPage • Add Delete Action Custom Control to the ViewColum • Pass some custom properties to identify the entry and for the partial refresh
  • 40. Q&A
  • 41. Usefull links • OpenNTF Extention Library  http://extlib.openntf.org/ • Social Business Toolkit Activity Stream  https://greenhouse.lotus.com/activitystream/
  • 42. How to reach me • Twitter: @flinden68 • Blog: http://www.domino-weblog.nl/ • E-mail: fli@e-office.com