Java API for Social Media

download Java API for Social Media

of 31

  • date post

    11-Jun-2015
  • Category

    Technology

  • view

    2.536
  • download

    1

Embed Size (px)

description

Agorava Agora! The motto of the Agorava tour to Brazil, at JustJava and related JUG meetings.

Transcript of Java API for Social Media

  • 1. Java API for Social MediaFrom Agorava to rkutJustJava Werner Keil Antoine Sabot-Durand Sao Paulo, Brazil18 / 05 / 12

2. Our GoalA JAVA API FOR ACCESS TOSOCIAL NETWORKS2 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 3. Who am I? Werner Keil Consultant Coach Creative Cosmopolitan Open Source Evangelist Software Architect Twitter @wernerkeil3 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 4. Proliferation4 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 5. Proliferation of Social Media5 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 6. Social Gaga6 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 7. Apache Shindig Open source implementation of OpenSocial & Gadgets specification An Apache Software project Available in Java & PHP http://shindig.apache.orgIts Goal:Shindigs goal was to allow new sites to start hosting socialapps in under an hours worth of work" 8 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 8. OpenSocial Container Become an OpenSocial Container o Get Shindig (PHP or Java) or the Google implementation http://shindig.apache.org o Look at examples & documentation http://code.google.com/p/opensocial-resources/wiki/SampleAppsThe official OpenSocial implementation has shifted from Shindig to Google Code9 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 9. What Is a Gadget? Simple gadgets for getting a Grid proxy credential and running remote commands. Both run on my own Web server.10 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 10. Who uses OpenSocial MySpace Orkut Friendster Hi511 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 11. Who does not use OpenSocialFacebookTwitterLinkedInXING*YammerFoursquareGoogle+...* Abandoned it for Security and other reasons12 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 12. Whats said about OpenSocial OpenSocial is what Google created for MySpace (Yammer CTO and co-founder Adam Pisoni) Out of the box, most gadgets are publicly available content that do not require authentication and authorization. (ThoughtWorks Studios about OpemSocial gadgets) OpenSocial is a specification that provides a standard way to share content between semi-trusted applications. While initially proposed for public facing social networking sites, it has possibly more potential within the corporate firewall (ThoughtWorks Radar, March 2012)13 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 13. Portable Contacts REST API for Person and Contacts Open source implementation Compatible with OpenSocial http://portablecontacts.net14 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 14. SocialSite Suns approach to SocialSun Microsystems Socialsite: Shindig + gadget based UI written in Java Open Source https://socialsite.dev.java.net/ 15 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 15. Facebooks Query Language All of the Facebook API is basically a set of wrappers around their SQL like FQL query language. So you can, if you prefer, make custom methods out of FQL query strings. var myQuery=SELECT name FROM user WHERE uid=+api.get_session().uid; api.fql_query(myQuery, getFQLResponse); getFQLResponse() is a developer-written callback function If its SQL like, could we use something like JPA around it?16 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 16. DaliCore History DaliCMS (2006): Web 2.0 ready CMS Open-source CMS with community features 2008: integration with Shindig, providesOpenSocial Implementation (JavaScript codefrom Shindig, Java code in DaliCMS) Developed as Glassfish incubator project17 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 17. DaliCore CMS More than a CMS DaliCore Adds functionality common to users, content and permissions on top of Java EE 6. Focus on Users and Permissions. In about every project that uses DaliCore, users should be able to login with existing credentials (Facebook, Twitter, Google Connect,...) Dali modules extend DaliCore 18. DaliCore Connect public abstract class ExternalNetwork public abstract Response connect(String callback); public abstract ExternalToken callback(String requestToken, String verifier); public abstract OnlineAccount createOnlineAccount(ExternalToken accessToken) throws DaliCoreException; ExternalNetwork class is extended by FacebookExternalNetwork TwitterExternalNetwork GoogleExternalNetwork 19. DaliCore Integrate The User concept in DaliCore can have 0 or more instances of OnlineAccount In projects created with DaliCore, the administrator/configurator decides what social networks are supported. Users can access all functionality using their social network credentials. 20. Seam Social a bootstrap for the API A full CDI API to interact with Social Networks Developed by Antoine Sabot-Durand (one of the proposed co-Spec Leads) Independent of CDI implementation A helper for: o Consuming REST services o Consuming OAuth 1 and 2 services o Identification via OAuth o JSON binding of Social Services API Ready to adopt JSR 351, 353 and JSR 339 and maybe others Will move to Apache Delta Spike initiative during 201221 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 21. Twitter4J History Twitter4J is an unofficial Java library forthe Twitter API.With Twitter4J, you can easily integrate yourJava application with Twitter. Its author, Yusuke Yamamoto now officiallyworking at Twitter. Designated to representTwitter in Social JSR EG. Agorava22 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 22. Social Gagorava23 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 23. AgoravianLIKESOCI24 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 24. Agorava a kind of JCA for Social Media25 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 25. Agorava Socializer26 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 26. Agorava Socializer ArchitectureAgorava Core API (Spec)CDIAgorava ConnectorsFacebook Twitter,Agorava Socializer JSF Web App RI27 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 27. Mr. Agorava Birthday 18th May! FB: https://www.facebook.com/antoine.sabotdurand or @antoine_sd28 2010-2012 Werner Keil, Antoine Sabot-Durand and Others 28. Lets SocializeDEMO 29. Q&AAGORAVA AGORA! 30. Contact Website: http://agorava.orgGitHub: https://github.com/agorava Google Group: https://groups.google.com/forum/?hl=de&fromgroups#!forum/java- social Email: Java-social@catmedia.us Twitter: @Java_Social or @AgoravaProj