WEBBOXDaniel A. Smith and MaxVan KleekTuesday, 23 April 13
AIMS• Support modern data needs• Multiple devices• Multiple cloud servicesTuesday, 23 April 13
servicesWHAT AND WHERE are ourdigital artefacts?what i createwhat i doRESOURCES I CONSULTTuesday, 23 April 13
AIMS• Support modern data needs• Multiple devices• Multiple cloud services• Security of personal data• Trustable• Sharing ...
AIMS• Support modern data needs• Multiple devices• Multiple cloud services• Security of personal data• Trustable• Sharing ...
webboxWEBBOX• Versioned• Transactional Integrity• Encryption• Graph Object Store• JSON and RDF output• Web Sharing• Develo...
ARCHITECTURE• PostgreSQL database• Object store (triples)• Versions• Transactions with tablelocking• Authentication by DB•...
DEMO 1• Data editorTuesday, 23 April 13
APPLICATIONS• HTML5 applications hosted by a WebBox• User authenticates with WebBox directly in-browser• Browser receives ...
DEMO 2• Realtime chatTuesday, 23 April 13
APPLICATION INTERFACE• External (non-browser) applications that use HTTP/WebSockets interface• Token based authentication•...
APPLICATION INTERFACEWebSocketsAppWebBoxUserApp connects to WebBoxTuesday, 23 April 13
APPLICATION INTERFACEUserWebSocketsUser connects to WebBoxWebSocketsAppWebBoxTuesday, 23 April 13
APPLICATION INTERFACEAppWebBoxUserWebSocketsWebSocketsUser grants permission to app - WebBox send it a tokenTuesday, 23 Ap...
APPLICATION INTERFACEAppWebBoxUserWebSockets/HTTPWebSocketsApp uses token to make changes using HTTP interfaceTuesday, 23 ...
APPLICATION INTERFACEAppWebBoxUserWebSockets/HTTPWebSocketsUser signals to App to start actions, e.g. a twitter crawlTuesd...
APPLICATION INTERFACEAppWebBoxUserApp sends the User a Push Notification (e.g. to iPhone)Push NotificationTuesday, 23 April 13
SAMPLE APPHarvest tweets, assert into WebBox, handle versioningTuesday, 23 April 13
DEMO 3• Twitter harvester +TweetwatcherTuesday, 23 April 13
WEBBOX-WEBBOXCOMMUNICATION• Similar interface toapplications - persistenttwo-way comms usingWebSockets or one-offHTTP call...
Upcoming SlideShare
Loading in …5
×

WEBBOX

326 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
326
On SlideShare
0
From Embeds
0
Number of Embeds
38
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

WEBBOX

  1. 1. WEBBOXDaniel A. Smith and MaxVan KleekTuesday, 23 April 13
  2. 2. AIMS• Support modern data needs• Multiple devices• Multiple cloud servicesTuesday, 23 April 13
  3. 3. servicesWHAT AND WHERE are ourdigital artefacts?what i createwhat i doRESOURCES I CONSULTTuesday, 23 April 13
  4. 4. AIMS• Support modern data needs• Multiple devices• Multiple cloud services• Security of personal data• Trustable• Sharing over the web• Interoperable with othersystems• Easy for developers• Support modern standards• Scalable• Open sourceTuesday, 23 April 13
  5. 5. AIMS• Support modern data needs• Multiple devices• Multiple cloud services• Security of personal data• Trustable• Sharing over the web• Interoperable with othersystems• Easy for developers• Support modern standards• Scalable• Open sourceVersatilitySecurityDurabilityAdoptabilityUsabilityTuesday, 23 April 13
  6. 6. webboxWEBBOX• Versioned• Transactional Integrity• Encryption• Graph Object Store• JSON and RDF output• Web Sharing• Development LibrariesTuesday, 23 April 13
  7. 7. ARCHITECTURE• PostgreSQL database• Object store (triples)• Versions• Transactions with tablelocking• Authentication by DB• HTTP interface to JSON• WebSockets interface:realtime diff updates• Encryption on the wire(TLS/SSL)• Encryption in the DBTuesday, 23 April 13
  8. 8. DEMO 1• Data editorTuesday, 23 April 13
  9. 9. APPLICATIONS• HTML5 applications hosted by a WebBox• User authenticates with WebBox directly in-browser• Browser receives a session token• Changes are made directly by the app• Developers use “webbox.js” to simplify authentication andaccess to webboxTuesday, 23 April 13
  10. 10. DEMO 2• Realtime chatTuesday, 23 April 13
  11. 11. APPLICATION INTERFACE• External (non-browser) applications that use HTTP/WebSockets interface• Token based authentication• User grants permission to an app via webbox, using a token• The app then has permissions on a box• User can signal to an app through the webbox WebSocket• Developers user “pyWebbox” library for pythonTuesday, 23 April 13
  12. 12. APPLICATION INTERFACEWebSocketsAppWebBoxUserApp connects to WebBoxTuesday, 23 April 13
  13. 13. APPLICATION INTERFACEUserWebSocketsUser connects to WebBoxWebSocketsAppWebBoxTuesday, 23 April 13
  14. 14. APPLICATION INTERFACEAppWebBoxUserWebSocketsWebSocketsUser grants permission to app - WebBox send it a tokenTuesday, 23 April 13
  15. 15. APPLICATION INTERFACEAppWebBoxUserWebSockets/HTTPWebSocketsApp uses token to make changes using HTTP interfaceTuesday, 23 April 13
  16. 16. APPLICATION INTERFACEAppWebBoxUserWebSockets/HTTPWebSocketsUser signals to App to start actions, e.g. a twitter crawlTuesday, 23 April 13
  17. 17. APPLICATION INTERFACEAppWebBoxUserApp sends the User a Push Notification (e.g. to iPhone)Push NotificationTuesday, 23 April 13
  18. 18. SAMPLE APPHarvest tweets, assert into WebBox, handle versioningTuesday, 23 April 13
  19. 19. DEMO 3• Twitter harvester +TweetwatcherTuesday, 23 April 13
  20. 20. WEBBOX-WEBBOXCOMMUNICATION• Similar interface toapplications - persistenttwo-way comms usingWebSockets or one-offHTTP calls• Users can give permissionsto other WebBoxes/users• Rich platform for real-timecollaboration• Challenges:• ID providers• Shared versioning acrosswebboxes• Global naming for sharedobjects• Network traversal/mobileIPWork in ProgressTuesday, 23 April 13

×