SlideShare ist ein Scribd-Unternehmen logo
OpenSocial in der Praxis
                                Sebastian Galonska, Bastian Hofmann




Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Inhalt

      Teil 1: Theorie
         Was ist ein Gadget?
         Was ist OpenSocial?
         Privacy
         OpenSocial Services
         OpenSocial ohne Gadgets - Die Rest API

      Teil 2: Praxis
         Wir schreiben uns unser eigenes Gadget




                                                                        2


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Was ist ein Gadget?

      XML Datei mit HTML und JavaScript
       (und CSS, Bilder, Flash, ...)

      Applikation nach der Google Gadgets
       Spezifikation

      Kann auf beliebigen Plattformen, die
       diese Spezifikation unterstützen,
       eingebunden werden




                                                                        3


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Darstellung eines Gadgets

      Der Gadget Server
         rendert das XML des Gadgets
         stellt JavaScript API zur Verfügung
         stellt REST API zur Verfügung

      Resultat wird über ein <iframe> in den
       Container (hier: gerenderte HTML Seite)
       eingebunden




                                                                        4


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Ein Gadget - Viele Ansichten

      Profile
      Canvas
      Preview
      Group
      Popup
      Integration




                                                                        5


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Technischer Hintergrund zu OpenSocial

      eine Erweiterung der Gadget API

      ein offener Standard

      ermöglicht Gadgets auf den Social Graph des Users zuzugreifen




                                                                        6


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Privatsphäre am Beispiel des VZ

      Die Privatsphäre für Gadgets erstreckt sich auf drei Bereiche:
         Sichtbarkeit
              Die Sichtbarkeit auf dem Profil (für Freunde, allgemeine VZ Benutzer)
               kann für jedes Gadget individuell eingestellt werden.
               (Default: Alle VZ Benutzer)

             Kommunikation
                Gadgets müssen vom Benutzer zu eigenständiger Kommunikation
                 berechtigt werden. Dies wird bei der Installation erstmalig abgefragt.

             Datenzugriff
                Der Zugriff auf Daten des Benutzers durch Dritte mittels Open Social
                 wird über eine Visitenkarte geregelt.

                                                                                          7


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Visitenkarten

      Bei jeder Installation eines Gadgets
       kann der Benutzer eine neue
       Visitenkarte anlegen, oder eine
       bestehende verbinden
      Daten der Visitenkarte können vom
       Profil des Nutzers abweichen
      Das Gadget hat nur Zugriff auf Daten
       von Nutzern, die das Gadget installiert
       haben.




                                                                        8


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Der People Service

      Abbildung des sozialen Graphen
       (Nutzer und dessen Freunde)

      Alle Visitenkarten aller Nutzer, die das Gadget
       installiert haben abrufbar

      Bei VZ: kein schreibender Zugriff

      API bietet Filter- und Sortiermöglichkeiten

      Identifikation über OpenSocial ID:
       www.studivz.net:K0UCbAZQeQsyHC467mx3Cw



                                                                        9


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Der AppData Service

      Persistenter Key - Value Store

      Speicherung pro Gadget

      In der Praxis haben verwenden Gadgets ein
       eigenes REST-Backend




                                                                        10


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     und noch mehr Services

      zahlreiche weitere Services werden durch den OpenSocial Standard oder durch
       Erweiterungen einzelner oder mehrere Container spezifiziert:

                Activities
                Messages
                Payment
                Photos




                                                                                     11


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Server zu Server

      Alle JavaScript OpenSocial APIs sind auch als REST API verfügbar

      Zugriff über
         Two-legged OAuth (im Kontext eines Gadgets)
         oder Three-legged OAuth mit eigenem Consumer Key und Secret




                                                                          12


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Und nun zur Praxis ...

      Wir schreiben uns unser eigenes Gadget in 6 Schritten:

                Hello World, Metadaten und Views
                Static Content und CDN Access
                Und nun wird es Social: People Service
                Irgendwas muss man ja auch speichern: AppData Service
                Noch was komplexer: Ein eigenes Backend und OAuth
                Das Sahnehäubchen: Virale Verbreitung mit Invites




                                                                         13


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




                                             VORFÜHRUNG




                                                                        14


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     Weitere Informationen ...
                                                                        Heute 15:15 Frank Ruske
                                                                        stellt OpenSocial
      http://www.opensocial.org                                        Integration vor


      Unser Blog: http://developer.studivz.net

      Unser Wiki: http://developer.studivz.net/wiki

      Werde ein Developer und bekomme Zugriff zu unserer Sandbox:
       http://www.studivz.net/Developer und http://www.meinvz.net/Developer

      Oder werde selbst Gadgets und OpenSocial Container:
       http://incubator.apache.org/shindig/



                                                                                                  15


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




                                                                        16


Donnerstag, 19. November 2009
VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net




     „The Web is going social, and the Social Web is going open“
                                                                        Chris Chabot




                                                                                   17


Donnerstag, 19. November 2009
Danke fürs Zuhören!

     VZ Netzwerke am Stand 3

     Kontakt: developer.studivz.net


     http://www.meinvz.net/seba
     http://www.studivz.net/bastian




Donnerstag, 19. November 2009

Weitere ähnliche Inhalte

OpenSocial in der Praxis

  • 1. OpenSocial in der Praxis Sebastian Galonska, Bastian Hofmann Donnerstag, 19. November 2009
  • 2. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Inhalt  Teil 1: Theorie  Was ist ein Gadget?  Was ist OpenSocial?  Privacy  OpenSocial Services  OpenSocial ohne Gadgets - Die Rest API  Teil 2: Praxis  Wir schreiben uns unser eigenes Gadget 2 Donnerstag, 19. November 2009
  • 3. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Was ist ein Gadget?  XML Datei mit HTML und JavaScript (und CSS, Bilder, Flash, ...)  Applikation nach der Google Gadgets Spezifikation  Kann auf beliebigen Plattformen, die diese Spezifikation unterstützen, eingebunden werden 3 Donnerstag, 19. November 2009
  • 4. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Darstellung eines Gadgets  Der Gadget Server  rendert das XML des Gadgets  stellt JavaScript API zur Verfügung  stellt REST API zur Verfügung  Resultat wird über ein <iframe> in den Container (hier: gerenderte HTML Seite) eingebunden 4 Donnerstag, 19. November 2009
  • 5. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Ein Gadget - Viele Ansichten  Profile  Canvas  Preview  Group  Popup  Integration 5 Donnerstag, 19. November 2009
  • 6. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Technischer Hintergrund zu OpenSocial  eine Erweiterung der Gadget API  ein offener Standard  ermöglicht Gadgets auf den Social Graph des Users zuzugreifen 6 Donnerstag, 19. November 2009
  • 7. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Privatsphäre am Beispiel des VZ  Die Privatsphäre für Gadgets erstreckt sich auf drei Bereiche:  Sichtbarkeit  Die Sichtbarkeit auf dem Profil (für Freunde, allgemeine VZ Benutzer) kann für jedes Gadget individuell eingestellt werden. (Default: Alle VZ Benutzer)  Kommunikation  Gadgets müssen vom Benutzer zu eigenständiger Kommunikation berechtigt werden. Dies wird bei der Installation erstmalig abgefragt.  Datenzugriff  Der Zugriff auf Daten des Benutzers durch Dritte mittels Open Social wird über eine Visitenkarte geregelt. 7 Donnerstag, 19. November 2009
  • 8. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Visitenkarten  Bei jeder Installation eines Gadgets kann der Benutzer eine neue Visitenkarte anlegen, oder eine bestehende verbinden  Daten der Visitenkarte können vom Profil des Nutzers abweichen  Das Gadget hat nur Zugriff auf Daten von Nutzern, die das Gadget installiert haben. 8 Donnerstag, 19. November 2009
  • 9. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Der People Service  Abbildung des sozialen Graphen (Nutzer und dessen Freunde)  Alle Visitenkarten aller Nutzer, die das Gadget installiert haben abrufbar  Bei VZ: kein schreibender Zugriff  API bietet Filter- und Sortiermöglichkeiten  Identifikation über OpenSocial ID: www.studivz.net:K0UCbAZQeQsyHC467mx3Cw 9 Donnerstag, 19. November 2009
  • 10. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Der AppData Service  Persistenter Key - Value Store  Speicherung pro Gadget  In der Praxis haben verwenden Gadgets ein eigenes REST-Backend 10 Donnerstag, 19. November 2009
  • 11. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net und noch mehr Services  zahlreiche weitere Services werden durch den OpenSocial Standard oder durch Erweiterungen einzelner oder mehrere Container spezifiziert:  Activities  Messages  Payment  Photos 11 Donnerstag, 19. November 2009
  • 12. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Server zu Server  Alle JavaScript OpenSocial APIs sind auch als REST API verfügbar  Zugriff über  Two-legged OAuth (im Kontext eines Gadgets)  oder Three-legged OAuth mit eigenem Consumer Key und Secret 12 Donnerstag, 19. November 2009
  • 13. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Und nun zur Praxis ...  Wir schreiben uns unser eigenes Gadget in 6 Schritten:  Hello World, Metadaten und Views  Static Content und CDN Access  Und nun wird es Social: People Service  Irgendwas muss man ja auch speichern: AppData Service  Noch was komplexer: Ein eigenes Backend und OAuth  Das Sahnehäubchen: Virale Verbreitung mit Invites 13 Donnerstag, 19. November 2009
  • 14. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net VORFÜHRUNG 14 Donnerstag, 19. November 2009
  • 15. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net Weitere Informationen ... Heute 15:15 Frank Ruske stellt OpenSocial  http://www.opensocial.org Integration vor  Unser Blog: http://developer.studivz.net  Unser Wiki: http://developer.studivz.net/wiki  Werde ein Developer und bekomme Zugriff zu unserer Sandbox: http://www.studivz.net/Developer und http://www.meinvz.net/Developer  Oder werde selbst Gadgets und OpenSocial Container: http://incubator.apache.org/shindig/ 15 Donnerstag, 19. November 2009
  • 16. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net 16 Donnerstag, 19. November 2009
  • 17. VZnet Netzwerke Ltd. l studiVZ.net l schuelerVZ.net l meinVZ.net „The Web is going social, and the Social Web is going open“ Chris Chabot 17 Donnerstag, 19. November 2009
  • 18. Danke fürs Zuhören! VZ Netzwerke am Stand 3 Kontakt: developer.studivz.net http://www.meinvz.net/seba http://www.studivz.net/bastian Donnerstag, 19. November 2009