Upload
jens-bruntt
View
752
Download
4
Embed Size (px)
Citation preview
DomDiscAn Open Source Android app that
replicateswith Domino discussion databases
(Primarily) a presentation on the Domino DataService API
By Jens Bruntt – [email protected]://www.convergens.dk
Orhttp://www.jens.bruntt.dk
16/5-2013
Purpose of the DomDisc App
● Mobility by– Accessing one or multiple standard Notes
discussion databases on a Smartphone (or tablet)
– Having offline capability
– Having Create option
– Synchronizing in the background
Screen dumps from app
Installation of the DomDisc app
https://play.google.com/store/apps/details?id=org.openntf.domdisc
Or scan this:
Working with the Domino Data Service API
Domino Data Service API
● What is it?● A REST-api for IBM Domino
– PUT, POST, DEL
– JSON in and out from the service
● Lets you access and work with Notes (Documents) in NSFs hosted on Domino
Reading documents1/3 the full list of notes in the db
Sample urlhttp://dev.openntf.org/demos/domdiscdemo.nsf/api/data/documents/Returns small entries – not full notes
Reading documents 2/3
● We now have a complete list of document-references. With minimal data:– Modified date/time
– Unid
– href
● If we need the full note we can visit the href
Reading documents 3/3The full note
Next time we need to replicate basic workflow - server-to-app
● Read the same start-URL (all notes in small format) for an updated list
● Pseudo code for each UNID in the list● Have we saved this UNID before?
– Yes: Check if @modified local<> server value● Yes: get the update note and update local storage● No: ignore
– No: Get the note and save in local storage
Authentication with Domino
Getting an authentication token from Domino with SSO configuration
● POST a form that has the same content as the one seen here ->
● Response from server:– Set-Cookie: DominoAuthSessID=xyz
or– Set-Cookie: LtpaToken=abc
● Copy this value. Insert it in the HTTP header for all your GETs, POSTs
● Bob is your uncle. Domino accepts your requests - you are logged in
What happens when you click Log in
Code walkthru
More information
Test the app with openntf.org
Parameters to put in the app● Host name: dev.openntf.org● Path to database:
/demos/domdiscdemo.nsf● Username for login: your
openntf.org name● Password: your openntf.org
password● Use SSL: no● Http Port: 80
Check in browser● http://dev.openntf.org/demos/domdiscdemo.nsf
Install ->
Getting the app code
● Code is available from– Openntf.org
– https://github.com/OpenNTF/DomDIsc
● Apache License 2.0 which means:– You can copy and use the code
● Must link to the source of the code● Can create closed-source code from the source
Working with the Domino Data Service API and other technologies
used in the app
● There are pointers - links in the app source: github.com developer.txt on these subjects– Accessing Domino Data Service
– Using SPRING Rest template
– Using ActionBar Sherlock - lets you have the action bar design pattern on older Android devices
– Including libraries in Android