Your SlideShare is downloading. ×
0
XMPP and the Social Web


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
   ...
@eschnou                                                                @alardw
Laurent Eschenauer                        ...
social web noun :




Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
       ...
social web noun :
An open global distributed data sharing 
network linking people, organizations, 
and  concepts.
        ...
social web noun :
An open global distributed data sharing 
network linking people, organizations, 
and concepts.
         ...
many activities related to the Social Web...




Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 201...
many activities related to the Social Web...


                                                          activitystrea.ms
...
many activities related to the Social Web...


                                                          activitystrea.ms
...
Are you sure ?


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
            ...
What about XMPP ?


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
         ...
identity: user@domain


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
     ...
profile: vcard, avatar


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
    ...
friends: roster


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
           ...
activities : presence


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
     ...
activities : IM


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
           ...
activities : PEP

PEP: Personal Eventing Protocol (a special PubSub node linked to a JID)

Laurent Eschenauer & Alard Weis...
is it enough ?


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
            ...
is it enough ? No :-(


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
     ...
profile
  activities
          relations



Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
   ...
profile
  activities
          relations
      richer semantics




Laurent Eschenauer & Alard Weisscher        C1 – Publi...
profile
  activities
          relations
      richer semantics
      extensible




Laurent Eschenauer & Alard Weisscher ...
profile
  activities
          relations
      richer semantics
      extensible
      fine grained access control


Laure...
profile
  activities
          relations
      richer semantics
      extensible
      fine grained access control
      o...
how do we do this ?


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
       ...
eXtensible MPP


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
            ...
Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
                             ...
4 extensions (very early drafts)




Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
          ...
4 extensions (very early drafts)
                     Social activities
                     Social profile

           ...
4 extensions (very early drafts)
                     Social activities
                     Social profile

           ...
“dwarf on the shoulders of 
         giants”
                                                               Bernard of Cha...
profile:
Portable Contacts

http://wiki.portablecontacts.net/
Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSD...
friends:
XHTML Friends Network

http://gmpg.org/xfn/
Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6...
activities:
activitystrea.ms

http://activitystrea.ms/
Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb...
an example ?


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
              ...
Hamlet updates his status


Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
 ...
Hamlet updates his status
  “to be or not to be...”

Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6...
<iq type='set'from='hamlet@denmark.lit/snsclient'to='denmark.lit'id='osw1'>




</iq>


Laurent Eschenauer & Alard Weissch...
<iq type='set'from='hamlet@denmark.lit/snsclient'to='denmark.lit'id='osw1'>
  <publish xmlns='http://onesocialweb.org/prot...
<iq type='set'from='hamlet@denmark.lit/snsclient'to='denmark.lit'id='osw1'>
  <publish xmlns='http://onesocialweb.org/prot...
server not a dumb router




Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
...
server not a dumb router
   archive (off-line access)




Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, ...
server not a dumb router
   archive (off-line access)
   query, search, filter




Laurent Eschenauer & Alard Weisscher   ...
server not a dumb router
   archive (off-line access)
   query, search, filter
   push notifications




Laurent Eschenaue...
server not a dumb router
   archive (off-line access)
   query, search, filter
   push notifications
   manage relationshi...
server not a dumb router
   archive (off-line access)
   query, search, filter
   push notifications
   manage relationshi...
“practice makes perfect”
                                                               Periander, 600bc




Laurent Esche...
server:
Openfire plugin


Open source XMPP server, written in Java, licensed under GPL 2


Laurent Eschenauer & Alard Weis...
web client:
Google Web Toolkit +
Emite

Emite is a BOSH library ported to Google Web Toolkit


Laurent Eschenauer & Alard ...
mobile:
Android application with
aSmack + custom code

aSmack is a port of Smack to Android, in addition we changed the ke...
language:
100% Java
30% code reuse

Google Web Toolkit compiles Java code to a Javascript Web Application

Laurent Eschena...
license:
Apache License 2.0
github.com/onesocialweb

Well.. we are not ready, you'll have to wait end of march to get the ...
coming up:




Laurent Eschenauer & Alard Weisscher        C1 – Public
FOSDEM, Feb 6 2010
               th
              ...
coming up:
     engage with XMPP community over the extensions




Laurent Eschenauer & Alard Weisscher        C1 – Public...
coming up:
     engage with XMPP community over the extensions
     engage with servers and clients developers




Laurent...
coming up:
     engage with XMPP community over the extensions
     engage with servers and clients developers
     open s...
coming up:
     engage with XMPP community over the extensions
     engage with servers and clients developers
     open s...
coming up:
     engage with XMPP community over the extensions
     engage with servers and clients developers
     open s...
“We need you, we need your youth, 
    your strength, and your idealism, to 
    help us make right what is wrong.”
      ...
info:
http://onesocialweb.org
http://twitter.com/onesocialweb
http://github.com/onesocialweb



Laurent Eschenauer & Alard...
Upcoming SlideShare
Loading in...5
×

OneSocialWeb presentation at FOSDEM 2010

5,232

Published on

The purpose of onesocialweb is to enable free, open, and decentralized social applications on the web. It was first presented at FOSDEM on Feb 6th 2010. These are the slides of the presentation.

Published in: Technology
0 Comments
8 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
5,232
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
96
Comments
0
Likes
8
Embeds 0
No embeds

No notes for slide

Transcript of "OneSocialWeb presentation at FOSDEM 2010"

  1. 1. XMPP and the Social Web Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  2. 2. @eschnou @alardw Laurent Eschenauer Alard Weisscher Software Engineer User Experience Designer Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  3. 3. social web noun : Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  4. 4. social web noun : An open global distributed data sharing  network linking people, organizations,  and  concepts. Unknown author, Wikipedia Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  5. 5. social web noun : An open global distributed data sharing  network linking people, organizations,  and concepts. Unknown author, Wikipedia A free, open, decentralized social  networking platform supporting an  ecosystem of social applications. Our interpretation Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  6. 6. many activities related to the Social Web... Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  7. 7. many activities related to the Social Web... activitystrea.ms portable contacts Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  8. 8. many activities related to the Social Web... activitystrea.ms portable contacts … yet no global solution Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  9. 9. Are you sure ? Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  10. 10. What about XMPP ? Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  11. 11. identity: user@domain Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  12. 12. profile: vcard, avatar Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  13. 13. friends: roster Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  14. 14. activities : presence Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  15. 15. activities : IM Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  16. 16. activities : PEP PEP: Personal Eventing Protocol (a special PubSub node linked to a JID) Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  17. 17. is it enough ? Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  18. 18. is it enough ? No :-( Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  19. 19. profile activities relations Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  20. 20. profile activities relations richer semantics Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  21. 21. profile activities relations richer semantics extensible Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  22. 22. profile activities relations richer semantics extensible fine grained access control Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  23. 23. profile activities relations richer semantics extensible fine grained access control offline Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  24. 24. how do we do this ? Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  25. 25. eXtensible MPP Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  26. 26. Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  27. 27. 4 extensions (very early drafts) Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  28. 28. 4 extensions (very early drafts)  Social activities  Social profile  Social relations  Social interactions Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  29. 29. 4 extensions (very early drafts)  Social activities  Social profile  Social relations  Social interactions Both server-server and client-server Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  30. 30. “dwarf on the shoulders of  giants” Bernard of Chartres, 1200 Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  31. 31. profile: Portable Contacts http://wiki.portablecontacts.net/ Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  32. 32. friends: XHTML Friends Network http://gmpg.org/xfn/ Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  33. 33. activities: activitystrea.ms http://activitystrea.ms/ Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  34. 34. an example ? Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  35. 35. Hamlet updates his status Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  36. 36. Hamlet updates his status “to be or not to be...” Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  37. 37. <iq type='set'from='hamlet@denmark.lit/snsclient'to='denmark.lit'id='osw1'> </iq> Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  38. 38. <iq type='set'from='hamlet@denmark.lit/snsclient'to='denmark.lit'id='osw1'>   <publish xmlns='http://onesocialweb.org/protocol/0.1/activities#publish'>   </publish> </iq> Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  39. 39. <iq type='set'from='hamlet@denmark.lit/snsclient'to='denmark.lit'id='osw1'>   <publish xmlns='http://onesocialweb.org/protocol/0.1/activities#publish'>     <entry xmlns='http://www.w3.org/2005/Atom'             xmlns:activity='http://activitystrea.ms/spec/1.0/'             xmlns:osw='http://onesocialweb.org/spec/1.0/'>       <title>to be or not to be ?</title>       <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb>       <activity:object>         <activity:object­type>           http://onesocialweb.org/spec/1.0/object/status         </activity:object­type>         <content type='text/plain'>to be or not to be ?</content>       </activity:object>       <osw:acl­rule>         <osw:acl­action                permission='http://onesocialweb.org/spec/1.0/acl/permission/grant'>           http://onesocialweb.org/spec/1.0/acl/action/view         </osw:acl­action>         <osw:acl­subject               type='http://onesocialweb.org/spec/1.0/acl/subject/everyone'/>       </osw:acl­rule>     </entry>   </publish> </iq> Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  40. 40. server not a dumb router Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  41. 41. server not a dumb router archive (off-line access) Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  42. 42. server not a dumb router archive (off-line access) query, search, filter Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  43. 43. server not a dumb router archive (off-line access) query, search, filter push notifications Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  44. 44. server not a dumb router archive (off-line access) query, search, filter push notifications manage relationships Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  45. 45. server not a dumb router archive (off-line access) query, search, filter push notifications manage relationships enforce access control at item level Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  46. 46. “practice makes perfect” Periander, 600bc Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  47. 47. server: Openfire plugin Open source XMPP server, written in Java, licensed under GPL 2 Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  48. 48. web client: Google Web Toolkit + Emite Emite is a BOSH library ported to Google Web Toolkit Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  49. 49. mobile: Android application with aSmack + custom code aSmack is a port of Smack to Android, in addition we changed the keep-alive strategy http://code.google.com/p/asmack/ Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  50. 50. language: 100% Java 30% code reuse Google Web Toolkit compiles Java code to a Javascript Web Application Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  51. 51. license: Apache License 2.0 github.com/onesocialweb Well.. we are not ready, you'll have to wait end of march to get the code Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  52. 52. coming up: Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  53. 53. coming up: engage with XMPP community over the extensions Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  54. 54. coming up: engage with XMPP community over the extensions engage with servers and clients developers Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  55. 55. coming up: engage with XMPP community over the extensions engage with servers and clients developers open source the code Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  56. 56. coming up: engage with XMPP community over the extensions engage with servers and clients developers open source the code setup a trial server – open federation Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  57. 57. coming up: engage with XMPP community over the extensions engage with servers and clients developers open source the code setup a trial server – open federation develop features, features and more features Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  58. 58. “We need you, we need your youth,  your strength, and your idealism, to  help us make right what is wrong.” Ronald Reagan Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  59. 59. info: http://onesocialweb.org http://twitter.com/onesocialweb http://github.com/onesocialweb Laurent Eschenauer & Alard Weisscher C1 – Public FOSDEM, Feb 6 2010 th © 2010 Vodafone Group
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×